【问题标题】:For Loop in R. How can I save the outputs?R中的for循环。如何保存输出?
【发布时间】:2016-06-13 03:24:00
【问题描述】:

我正在尝试将这个 for 循环中的每个值保存到一个向量中:

for (i in 1:10000){
  mean((rbinom(1000,5,0.7)))
}

但我没有成功。

我知道我需要在循环之前创建向量并在其中调用它,但我不知道该怎么做。

【问题讨论】:

  • 你知道你从不在循环中使用循环变量i吗?
  • 是的,我这样做是因为我需要它运行固定的 10000 次。最初我只是打印结果,所以我知道代码有效。我只是不知道如何将它放入向量中。
  • 只需使用rep(mean(...), 10000),不需要显式循环。我仍然不确定你想要达到什么目的。
  • 感谢您的帮助。这只是一个家庭作业问题,建议使用 for 循环来解决,但老师从未仔细研究过。只有我在 r 上的第三个作业,所以我还不太了解。
  • rep(..) 存在问题:它总是会重复相同的值。我建议改用replicate(),如下所示。

标签: r for-loop vector


【解决方案1】:

不使用for 循环,您可以执行以下操作:

means.vec <- replicate(10000, mean(rbinom(1000,5,0.7)))

如果你真的需要for循环,你可以试试:

means.vec <- vector()
for (i in 1:10000) {
   means.vec[i] <- mean(rbinom(1000,5,0.7))
}

【讨论】:

  • 谢谢!我只是假设一个 for 循环是最简单的,但这要好得多。
猜你喜欢
  • 2019-10-24
  • 2017-07-14
  • 2012-03-30
  • 2019-02-02
  • 2018-05-24
  • 2020-10-08
  • 1970-01-01
  • 2020-05-30
  • 1970-01-01
相关资源
最近更新 更多