在R数据表中检索局部最大值的值 - 已经有列号

时间:2013-03-20 13:37:16

标签: r mathematical-optimization

使用这个问题的解决方案:Finding local maxima and minima我已经能够从我的数据表中检索似乎是列号的列表,以获取局部最大值。我还需要从表中检索该峰值。我最好返回一个矩阵或等价物,其中每一行包含当地峰值而不是位置,因为我已经有位置

所以说使用矢量ex_data< -c(1,3,2,2,1,3,5,4,2,1)我想得到一个矢量说(3,5)。 我已经有了以下代码:

local_max <- function(x) {
which(diff(sign(diff(x)))==-2)+1}
local_max(ex_data)

产生向量(2,7)

1 个答案:

答案 0 :(得分:0)

这很容易。只需使用索引向量进行子集化。

ex_data[local_max(ex_data)]