如何仅获取迭代已收敛的迭代的最后一个值?

时间:2015-06-27 01:17:19

标签: r while-loop iteration

请在R

中循环迭代时考虑这一点
x=c(1,2,3,4,5)
i=2
m=x+1

m[i]=x[i]+1
x[2]=2
continue1=1


while (continue1>0) {
i=i+1
m[i+1]=x[i]+1
continue1=m[i+1]-m[i]
}

现在如果我说print(m),它会打印迭代过程中产生的m的所有值。我只想要迭代已经收敛的迭代的最后一个值。我该怎么做?

提前致谢。

1 个答案:

答案 0 :(得分:0)

这是一个包含dplyr包和last函数的解决方案,它不需要澄清我猜,它基本上就是它的名称所暗示的。

library(dplyr)
last(m)
[1] 6

这里有一个基本的R解决方案,尽管我不得不承认最容易和最简单的是Blondedust在评论中提出的那个(当然我在他/她发布之前我甚至没想过:))

m[length(m)]
[1] 6