"sample" 和 "rbinom" R 中的函数
"sample" and "rbinom" functions in R
我猜之前有人问过,但我对R中的"sample"和"rbinom"函数还是有点生疏,想问以下两个简单的问题:
a) 假设我们有:
rbinom(n = 5, size = 1, prob = c(0.9,0.2,0.3))
所以 "n" = 5 但 "prob" 只表示其中三个。 R 为这两个 n 分配了什么值?
b) 假设我们有:
sample(x = 1:3, size = 1, prob = c(.5,0.2,0.9))
根据 R-help (?sample):
The optional prob argument can be used to give a vector of weights
for obtaining the elements of the vector being sampled.
They need not sum to one, but they should be non-negative and not all zero.
问题是:为什么 "prob" 不需要总和为一?
任何答案将不胜感激:谢谢!
The numerical arguments other than n are recycled to the length of the result.
这意味着在您的示例中,您传入的 prob
向量将被回收,直到它达到所需的长度(大概是 5)。所以将使用的向量是:
c(0.9, 0.2, 0.3, 0.9, 0.2)
至于 sample
函数,正如@thelatemail 指出的那样,概率总和不必为 1。看来 prob
向量在内部被归一化为 1。
我猜之前有人问过,但我对R中的"sample"和"rbinom"函数还是有点生疏,想问以下两个简单的问题:
a) 假设我们有:
rbinom(n = 5, size = 1, prob = c(0.9,0.2,0.3))
所以 "n" = 5 但 "prob" 只表示其中三个。 R 为这两个 n 分配了什么值?
b) 假设我们有:
sample(x = 1:3, size = 1, prob = c(.5,0.2,0.9))
根据 R-help (?sample):
The optional prob argument can be used to give a vector of weights
for obtaining the elements of the vector being sampled.
They need not sum to one, but they should be non-negative and not all zero.
问题是:为什么 "prob" 不需要总和为一?
任何答案将不胜感激:谢谢!
The numerical arguments other than n are recycled to the length of the result.
这意味着在您的示例中,您传入的 prob
向量将被回收,直到它达到所需的长度(大概是 5)。所以将使用的向量是:
c(0.9, 0.2, 0.3, 0.9, 0.2)
至于 sample
函数,正如@thelatemail 指出的那样,概率总和不必为 1。看来 prob
向量在内部被归一化为 1。