Matlab 查找信号上的局部最大值及其百分位数

Matlab 查找信号上的局部最大值及其百分位数,matlab,signal-processing,max,Matlab,Signal Processing,Max,我有一个信号,想用MATLAB找到它的局部最大值,找到它们的振幅,从最小到最大排序,然后选择集合的第75个百分位 我该怎么做 **第75百分位:指集合中75%的数据等于或小于此值的特定元素。示例:如果我们的值在0到100之间,则75是第75个百分位数。对于实值向量(1D)信号,您可以使用信号处理工具箱查找局部最大值,并指定峰值距离或最大值阈值等参数 对于复值信号,您可以通过abs()将findpeaks()应用于信号的幅度 如果需要对值进行排序,可以使用和从值向量计算百分位 您是否尝试过一些东西

我有一个信号,想用MATLAB找到它的局部最大值,找到它们的振幅,从最小到最大排序,然后选择集合的第75个百分位

我该怎么做

**第75百分位:指集合中75%的数据等于或小于此值的特定元素。示例:如果我们的值在0到100之间,则75是第75个百分位数。

对于实值向量(1D)信号,您可以使用信号处理工具箱查找局部最大值,并指定峰值距离或最大值阈值等参数

对于复值信号,您可以通过
abs()
findpeaks()
应用于信号的幅度


如果需要对值进行排序,可以使用和从值向量计算百分位

您是否尝试过一些东西,是否有一个示例作为输入和输出?您的信号是1D(矢量)还是2D(阵列)?此外,如果您想要“局部最大值的振幅”,您最可能有复值项?注:欢迎来到SO。有时答案就像阅读文档一样简单。谢谢亲爱的,我也用pks=findpeaks(yy,'sortstr','ascend')对它们进行排序。@Etienne我有一个信号,我想找到局部最大值的幅值,而不是它们的索引亲爱的谢谢你的欢迎:)我是matlab的初学者,需要帮助了解MATLABno问题的世界,很高兴这有帮助。编辑原始帖子(OP)时,您可以添加编辑:或更新:段落,而无需更改原始问题(或标题)的概念。这样人们就会知道你在收到反馈后修改了你的问题。亲爱的,我有一个问题,localmax会有负值吗?