如何生成具有固定长度和固定比例的两个值的随机向量?

时间:2019-11-10 00:34:57

标签: r sample

我想生成一个仅包含两个可能值的随机向量:“ FEMALE”和“ MALE”。我还希望向量的长度固定,而每个值的精确固定%。

我尝试了以下代码。效果很好,只是它没有给我确切的百分比

> x1 <- sample(c("FEMALE", "MALE"), size = 19749, replace = TRUE, prob=c(0.538, 0.462))

> length(x1)
[1] 19749

> x2 <- table(x1)

> prop.table(x2)
x1
   FEMALE      MALE 
0.5410401 0.4589599

谁知道为什么我在向量x1中没有得到准确的FEMALE和MALE%?而且,如何修复代码以获取准确的%?

1 个答案:

答案 0 :(得分:3)

首先用所需数量的值创建向量,然后sample

n = 19749
x1 <- sample(c(rep("FEMALE", .538 * n),
               rep("MALE", .462 * n)))
prop.table(table(x1))
x1
#   FEMALE      MALE 
#0.5379785 0.4620215