Cli*_* AB 5 performance r insert vector
请考虑以下代码:
lotsOfNumbers <- rep(pi, 5 * 10^7)
system.time(lotsOfNumbers[1] <- 0)
Run Code Online (Sandbox Code Playgroud)
如果我一次输入一行代码,第二行代码大约需要0.267秒才能在我的计算机上进行评估.这对我来说并不奇怪:我知道R代码lotsOfNumbers[1] <- 0实际上是重新编译lotsOfNumbers成一个新对象,所以这个函数实际上是以lotsOfNumbers的长度来缩放而不是常量.
什么是令我感到诧异的是,如果你在同一时间进入两行代码,system.time将报告的第二行代码需要0.000秒我的电脑上.
为什么同时输入两条线加速第二条线?