【问题标题】:Interaction of sample and rnorm function in R?R中样本和rnorm函数的相互作用?
【发布时间】:2019-07-02 13:28:22
【问题描述】:

我正在设置我的 R 代码来做蒙特卡洛,但是我需要一个随机分布的 1 个数字的样本,所以为了测试 R 中样本的功能,我设置了下面的代码,但是我做了不明白结果不同的原因。

x <- rnorm(1,8,0)
x
#8

y <-sample(x=rnorm(1,8,0), size=1)
y
#4

【问题讨论】:

  • 你知道rnorm(1,8,0)的真正含义吗?

标签: r random


【解决方案1】:

引用?sample

如果 x 的长度为 1,是数字(在 is.numeric 的意义上)并且 x >= 1, 通过 sample 进行采样从 1:x 开始。

您实际上是从c(1, 2, 3, 4, 5, 6, 7, 8) 而不是c(8) 绘制的。

但是,如果我们从 "character" 类中绘制,它就可以工作。

as.numeric(sample(as.character(rnorm(1,8,0)), size=1))
# [1] 8

【讨论】:

  • 你可以通过sample(rep(rnorm(1,8,0), 2), size=1)避免双重转换
  • @Cath 好聪明!
  • @RomanLuštrik 你可能打算解决 OP,我已经回答了函数的不同行为,
  • 我的评论绝不是对您或您的方法的判断。如果遇到这种情况,我深表歉意。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-24
  • 1970-01-01
  • 2016-10-22
  • 1970-01-01
  • 2015-08-07
相关资源
最近更新 更多