首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在matlab中求矩阵中极大值任意边的局部极小值

在matlab中求矩阵中极大值任意边的局部极小值
EN

Stack Overflow用户
提问于 2018-11-14 21:49:23
回答 2查看 305关注 0票数 1

用于一些“大数据”处理。当绘制时,我的数据是符号波,但有随机的峰值。(所以想象一下,根据矩阵的位置绘制每个矩阵位置的值)

我知道如何找到峰值,但我需要一种方法来找到峰值两侧的局部最小值和矩阵中的位置。例如,如果数据为:

3 2 1 0 1 2 3 7 -4 -5 -6 -5 -4 0

我需要的函数将返回如下内容: min,loc = 0,-6;4,11

EN

回答 2

Stack Overflow用户

发布于 2018-11-14 22:27:26

如果您可以访问R2017b或更高版本,请查看islocalmaxislocalmin函数。

票数 2
EN

Stack Overflow用户

发布于 2018-11-15 00:18:56

MATLAB R2007a和更新版本有一个名为findpeaks的函数(它需要信号处理工具箱)。您要查找的语法是

代码语言:javascript
复制
[pks,locs] = findpeaks(data)

具体来说,

代码语言:javascript
复制
>> [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

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53301780

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档