2013-02-06 36 views
-2

我正在开展第四个年度项目。它需要将大量数据减少为有用的特征来表示它。现在,这个数据集里面出现高峰和我的任务之一是创建算法会自动提取或拔出峰高,峰宽和峰的位置,为数据集内的每个峰值。最后,我必须在集群中表示这些功能。以前做过这种事情的人能否提供一些帮助?我打算在MATLAB中这样做。由于数据挖掘:特征提取 - 峰值检测?

+0

WhatHaveYOUTried? (.com) – bla

+0

1维或多维? *非常*不同的问题,因为1d可以排序。你尝试过局部最大值检测吗? –

回答

1

假设你的数据被存储在变量data。您可以使用该功能findpeaksfindpeaks(data)峰和发现他们使用findpeaks(-data)之间的相对极小。 findpeaks docummentation

这种方式,你有最大值和它们之间的最小值的位置。根据您要使用的标准,您可以将宽度计算为最大值与最小值之间的距离,或者,例如,峰值处的宽度为其最大值的一半。