用于一些“大数据”处理。当绘制时,我的数据是符号波,但有随机的峰值。(所以想象一下,根据矩阵的位置绘制每个矩阵位置的值)
我知道如何找到峰值,但我需要一种方法来找到峰值两侧的局部最小值和矩阵中的位置。例如,如果数据为:
3 2 1 0 1 2 3 7 -4 -5 -6 -5 -4 0
我需要的函数将返回如下内容: min,loc = 0,-6;4,11
发布于 2018-11-14 22:27:26
如果您可以访问R2017b或更高版本,请查看islocalmax和islocalmin函数。
发布于 2018-11-15 00:18:56
MATLAB R2007a和更新版本有一个名为findpeaks的函数(它需要信号处理工具箱)。您要查找的语法是
[pks,locs] = findpeaks(data)具体来说,
>> [pks,locs] = findpeaks(-[3 2 1 0 1 2 3 7 -4 -5 -6 -5 -4 0]) % note it's "-[data]"
pks =
0 6
locs =
4 11缺点是因为我们想要的是“谷”而不是“峰”,所以确保之后不要忘记否定pks。
https://stackoverflow.com/questions/53301780
复制相似问题