如何找到数据的汇聚点

时间:2018-02-08 12:05:50

标签: r convergence

我有一个类似的数据集,

x <- sample(55:100,200,replace = T)
head(x)
# [1] 67 95 97 91 98 81

我需要找出这个特定数据的收敛点类似于梯度下降曲线。为此,我尝试了以下内容,

x_mean <- c()
for (i in 1:length(x)) {
  x_mean[i] <- mean(x[1:i])
}

mean_diff <- c()
for (i in 2:length(x_mean)) {
  mean_diff[i-1]=(x_mean[i] - x_mean[i-1])^2
}

x2 <-seq(1,length(mean_diff),1)
lo <- loess(mean_diff ~ x2,span = 1)
convergence <- predict(lo)
convergence_point <- which.min(convergence)
convergence_point # 79

plot(convergence,ty = "l",lwd = 2)
abline(v = convergence_point, col = "red")

enter image description here

我不确定我的发现是否正确。有没有其他方法可以找出收敛点?

谢谢你。

1 个答案:

答案 0 :(得分:0)

根据我的理解,会聚点,你的意思是直线通过曲线的坐标,恰好是局部最小值,或类似的东西(取决于你想要达到的目的)。

然后您可以尝试:locator

如果您在RStudio中运行此功能,则在生成图表后,运行locator()并将其放在需要坐标的点上,然后按Escape键。

如果这是你想要的,你现在应该得到X和Y坐标。