我想知道当R添加两个向量时到底发生了什么,为什么它如此有效。例如,为什么这样做:
set.seed(1)
x <- rnorm(100000,0,1)
set.seed(1)
y <- rnorm(100000,0,1)
diff1 <- y - x
比这快得多:
diff2 <- rep(0, length(x))
for( i in 1:length(x) ){ diff2[ i ] <- y[ i ] - x[ i ] }
我想知道原因我已经使用了大量数据集了一段时间,并且有时候采取差异并不像减去两个向量那样直接。在那些情况下,我通常选择做一个循环,但我发现它非常低效,我想找出一个更好的方法来做到这一点。谢谢你的帮助。