R 使用循环查找同一列中两行之间的差异

R 使用循环查找同一列中两行之间的差异,r,for-loop,operators,R,For Loop,Operators,因此,我在第4列中有252行数据,我想找出整个列中两个连续行之间的差异 我目前的代码是: appleClose<-NULL for (i in 1:Apple[1]){ appleClose[i] <- AA[i,4] } appleClose[] appleClose这就是你的意思吗 > Apple=runif(5,1,10) #5 numbers > Apple [1] 3.362267 2.489085 3.899513 5.591127 9.315716

因此,我在第4列中有252行数据,我想找出整个列中两个连续行之间的差异

我目前的代码是:

appleClose<-NULL
for (i in 1:Apple[1]){
  appleClose[i] <- AA[i,4]
}
appleClose[] 
appleClose这就是你的意思吗

> Apple=runif(5,1,10)

#5 numbers
> Apple
[1] 3.362267 2.489085 3.899513 5.591127 9.315716

#4 differences
> diff(Apple)
[1] -0.8731816  1.4104271  1.6916143  3.7245894
或者取决于你的数据

>diff(AA$Apple)
或许

>diff(AA[,4])
另一种选择(如果你提到这一点,你的问题不太清楚)

AA[-1,4]-AA[-dim(A)[1,4]


你有什么错误?什么是苹果和AA?没有太多的数据,很难回答你的问题。我想看看如何制作一个很好的可复制的例子。你检查过
diff
函数吗?是的,请制作一个输入和预期输出的可复制的小例子。他可能在索引中越界了。使用diff.或c(NA,x)-c(x,NA)。你为什么会出错?很难从你的神秘符号中分辨出来,但如果你从1循环到x的长度,那么x[i+1]将不存在差异(AA[,4]),但会在几天内跳过:2013-08-30-0.11 2013-09-03 0.02
>diff(AA[,4])