0

我在问一个简单的问题。为什么这两个代码片段不一样?

pNl <- {}

for(i in length(x):length(x)-250) { 
    temp <-x[i] - x[i-1] 
    pNl <-append(pNl, temp, length(pNl))
}

pNl

PnL <- {}

for(i in length(x):(length(x)-250)) {
    temp <- x[i] - x[i-1]
    PnL <- append(PnL, temp, length(PnL))
}


PnL

当我执行它们时,我会得到不同的结果......

真的很感谢你的回答!!!

4

1 回答 1

6

问题出在for循环定义中。在第一个循环语句中,您省略了括号,即

#length(x):length(x)-250
R> 2:5-1
[1] 1 2 3 4

在第二个循环中,您有括号,因此:

#length(x):(length(x)-250) 
R> 2:(5-1)
[1] 2 3 4

这两个语句不相同,因此您不会循环同一件事。

于 2013-05-17T09:30:01.827 回答