scipy.signal.
argrelmax#
- scipy.signal.argrelmax(data, axis=0, order=1, mode='clip')[源代码]#
计算 data 的相对最大值。
- 参数:
- datandarray
要从中查找相对最大值的数组。
- axisint,可选
用于从 data 中选择的轴。默认值为 0。
- orderint,可选
用于比较,认为
comparator(n, n+x)
为真时的每侧需要使用多少个点。- modestr,可选
处理向量的边缘方式。可用选项为“wrap”(环绕)或“clip”(将溢出视为最后一个(或第一个)元素)。默认值为“clip”。查看
numpy.take
。
- 返回:
- extremandarray 元组
整数数组中的极大值索引。
extrema[k]
是 data 轴 k 的索引数组。请注意,即使 data 为一维,返回值也是一个元组。
说明
此函数使用
argrelextrema
并将 np.greater 作为比较器。因此,它要求在值的两侧严格不等于,才能认为它是一个极大值。这意味着不会检测到平坦的极大值(超过一个样本宽)。在 data 为一维的情况下,find_peaks
可用于检测所有局部极大值,包括平坦的极大值。0.11.0 版本中新增。
示例
>>> import numpy as np >>> from scipy.signal import argrelmax >>> x = np.array([2, 1, 2, 3, 2, 0, 1, 0]) >>> argrelmax(x) (array([3, 6]),) >>> y = np.array([[1, 2, 1, 2], ... [2, 2, 0, 0], ... [5, 3, 4, 4]]) ... >>> argrelmax(y, axis=1) (array([0]), array([1]))