如果我有一个向量作为参数,并且只有一个元素可供采样(而且我只想对一个元素进行采样),我不明白示例函数是如何工作的。
我正在做一个模拟,每次我的循环运行一步时,我的输入向量 x
的大小都会不同。但是当向量只包含一个元素时,例如 x = c(3)
,它应该是样本 3,但我不会开始对所有类型的数字 2 和 1 进行采样。我尝试使用 set.seed
并更改了替换参数,但出了点问题。有谁知道这里发生了什么?
答案 0 :(得分:0)
来自?sample
:
如果 x 的长度为 1,是数字(在 is.numeric 的意义上)并且 x >= 1,则通过样本进行采样从 1:x 开始。请注意,当 x 在诸如 sample(x) 之类的调用中长度不同时,此便利功能可能会导致不希望出现的行为。
因此,如果不受欢迎,这种行为是预期的。一个可能的解决方案是在 user20650 链接的 answer 中。