numpy.frexp¶
-
numpy.
frexp
(x[, out1, out2]) = <ufunc 'frexp'>¶ 将x的元素分解为尾数和二进制指数。
返回(尾数,指数),其中x =尾数* 2 **指数。尾数位于开放间隔(-1,1),而二进制指数是有符号整数。
参数: x:array_like
要分解的数字的数组。
out1:ndarray,可选
输出数组的尾数。必须与x具有相同的形状。
out2:ndarray,可选
输出指数的数组。必须与x具有相同的形状。
返回: (尾数,指数):ndarrays的元组,(float,int)
尾数是值为-1和1之间的浮点数组。exponent是一个int数组,表示2的指数。
笔记
不支持复杂的dtypes,它们会引发一个TypeError。
例子
>>> x = np.arange(9) >>> y1, y2 = np.frexp(x) >>> y1 array([ 0. , 0.5 , 0.5 , 0.75 , 0.5 , 0.625, 0.75 , 0.875, 0.5 ]) >>> y2 array([0, 1, 2, 2, 3, 3, 3, 3, 4]) >>> y1 * 2**y2 array([ 0., 1., 2., 3., 4., 5., 6., 7., 8.])