当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy ptp用法及代码示例


本文简要介绍 python 语言中 numpy.ptp 的用法。

用法:

numpy.ptp(a, axis=None, out=None, keepdims=<no value>)

沿轴的值范围(最大值 - 最小值)。

该函数的名称来自“peak to peak”的首字母缩写词。

警告

ptp保留数组的数据类型。这意味着具有 n 位的有符号整数输入的返回值(例如np.int8,np.int16, etc) 也是一个有 n 位的有符号整数。在这种情况下,peak-to-peak 值大于2**(n-1)-1将返回负值。下面显示了解决方法的示例。

参数

a array_like

输入值。

axis 无或int 或整数元组,可选

沿其查找峰的轴。默认情况下,展平数组。轴可能是负数,在这种情况下,它从最后一个轴计数到第一个轴。

如果这是一个整数元组,则在多个轴上执行归约,而不是像以前那样在单个轴或所有轴上执行。

out array_like

用于放置结果的替代输出数组。它必须具有与预期输出相同的形状和缓冲区长度,但如果需要,输出值的类型将被强制转换。

keepdims 布尔型,可选

如果将其设置为 True,则缩小的轴将作为尺寸为 1 的尺寸留在结果中。使用此选项,结果将针对输入数组正确广播。

如果传递了默认值,那么保持昏暗不会被传递到ptp子类的方法numpy.ndarray,但是任何非默认值都是。如果sub-class' 方法没有实现保持昏暗将引发任何异常。

返回

ptp ndarray

保存结果的新数组,除非指定了 out,在这种情况下将返回对 out 的引用。

例子

>>> x = np.array([[4, 9, 2, 10],
...               [6, 9, 7, 12]])
>>> np.ptp(x, axis=1)
array([8, 6])
>>> np.ptp(x, axis=0)
array([2, 0, 5, 2])
>>> np.ptp(x)
10

此示例显示当输入是有符号整数数组时可以返回负值。

>>> y = np.array([[1, 127],
...               [0, 127],
...               [-1, 127],
...               [-2, 127]], dtype=np.int8)
>>> np.ptp(y, axis=1)
array([ 126,  127, -128, -127], dtype=int8)

解决方法是使用 view() 方法将结果视为具有相同位宽的无符号整数:

>>> np.ptp(y, axis=1).view(np.uint8)
array([126, 127, 128, 129], dtype=uint8)

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.ptp。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。