numpy.absolute#
- numpy.absolute(x, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature]) = <ufunc 'absolute'>#
逐元素计算绝对值.
np.abs是此函数的简写.- 参数:
- xarray_like
输入数组.
- outndarray, None, or tuple of ndarray and None, optional
存储结果的位置.如果提供,则它必须具有输入广播到的形状.如果未提供或为None,则返回一个新分配的数组.一个元组(可能仅作为关键字参数)的长度必须等于输出的数量.
- 其中类数组,可选
此条件会在输入上进行广播.在条件为True的位置, out 数组将被设置为ufunc结果.否则, out 数组将保留其原始值.请注意,如果通过默认的
out=None创建一个未初始化的 out 数组,则其中条件为False的位置将保持未初始化.- \kwargs
对于其他仅限关键字的参数,请参见 ufunc docs .
- 返回:
- 绝对值ndarray
一个包含 x 中每个元素的绝对值的ndarray. 对于复数输入
a + ib,绝对值为 \(\sqrt{ a^2 + b^2 }\) .如果 x 是标量,则这也是一个标量.
示例
>>> import numpy as np >>> x = np.array([-1.2, 1.2]) >>> np.absolute(x) array([ 1.2, 1.2]) >>> np.absolute(1.2 + 1j) 1.5620499351813308
在
[-10, 10]上绘制函数:>>> import matplotlib.pyplot as plt
>>> x = np.linspace(start=-10, stop=10, num=101) >>> plt.plot(x, np.absolute(x)) >>> plt.show()
在复平面上绘制函数:
>>> xx = x + 1j * x[:, np.newaxis] >>> plt.imshow(np.abs(xx), extent=[-10, 10, -10, 10], cmap='gray') >>> plt.show()
abs函数可以作为 ndarrays 上np.absolute的简写.>>> x = np.array([-1.2, 1.2]) >>> abs(x) array([1.2, 1.2])