繁体   English   中英

警告:要替换的项目数不是替换长度的倍数

[英]Warning: number of items to replace is not a multiple of replacement length

我不明白我的代码运行循环有什么问题。 请帮忙

P10<-numeric(2000) 
for(i in 1:2000){
  r <- rnorm(10, 0.03, 0.005)
  P10[i] <- 20 * exp(cumsum(r))
}

Warning in P10[i] <- 20 * exp(cumsum(r)): number of items to replace is not
## a multiple of replacement length

你可能想做这样的事情:

P10 <- lapply(1:2000, function(x) {
  r <- rnorm(10, 0.03, 0.005)
  20 * exp(cumsum(r))
})

P10 <- unlist(P10)

这很相似,但会给你一个矩阵 10 * 2000

P10 <- replicate(2000, {
  r <- rnorm(10, 0.03, 0.005)
  20 * exp(cumsum(r))
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM