R 检测x轴开始和结束处的峰值

R 检测x轴开始和结束处的峰值,r,detection,smoothing,R,Detection,Smoothing,我一直致力于在一个包含数千个y~x关系的数据集中检测峰值。正因为如此,我一直在使用黄土和滚动应用通过比较局部最大值和平滑值来检测峰值。从那时起,我一直在努力优化span和w阈值,分别用于louble和rollply函数 然而,我意识到我的一些关系在x轴上的开始或结束时都有一个峰值,这是我感兴趣的。但这些峰值尚未确定。现在,我尝试在我的x变量范围之外添加假变量来模拟峰值。例如,如果我的x值范围在-50到160之间,我创建了-100和210的x值,并为它们指定了一个0 y值 这有助于我确定一些在开始

我一直致力于在一个包含数千个y~x关系的数据集中检测峰值。正因为如此,我一直在使用
黄土
滚动应用
通过比较局部最大值和平滑值来检测峰值。从那时起,我一直在努力优化
span
w
阈值,分别用于
louble
rollply
函数

然而,我意识到我的一些关系在x轴上的开始或结束时都有一个峰值,这是我感兴趣的。但这些峰值尚未确定。现在,我尝试在我的x变量范围之外添加假变量来模拟峰值。例如,如果我的x值范围在-50到160之间,我创建了-100和210的x值,并为它们指定了一个0 y值

这有助于我确定一些在开始或结束时有峰值的关系。正如你在这里看到的:

然而,对于一些人来说,它并不起作用


尽管我对向关系中添加“假”值感到不舒服,但平滑会频繁地改变峰值位置,更重要的是,我找不到允许检测这些开始或结束峰值的解决方案。有人知道如何解决R中的问题吗?

-找到局部最大值和最小值,我检查并尝试了第一个答案,但这是同一个问题。它没有检测到maxima是否在开头或结尾。编辑:我正在尝试@Tommy的答案,它似乎更有希望!