【发布时间】:2017-10-31 19:18:58
【问题描述】:
我只是尝试使用 R 根据指定的概率将样本分成具有固定组大小的组,但希望始终确保洗牌样本的组大小始终相同。例如,假设样本量为 100,组数为 4,对于每个组,组大小分别为 40、30、20、10,如下所示:
category_split <- sample(1:4, 100, replace=T, prob=c(0.4,0.3,0.2,0.1))
category_split
# [1] 1 2 3 3 1 1 3 3 2 1 1 2 1 4 2 1 3 2 1 1 1 2 3 4 1 2 2 1 2 2 1 1 1 3 3 4 3 1 2 2 2 3 1 1 3 2 3 1 1 1 4 1 4 1
#[55] 1 2 3 4 1 1 1 1 2 1 3 2 2 3 1 3 3 2 1 4 1 2 1 2 3 2 3 3 1 2 1 2 3 1 1 1 1 1 3 2 3 1 1 1 2 3
table(category_split)
#category_split
# 1 2 3 4
#43 26 24 7
但是,由于抽样过程的概率性质,结果不能总是确保与规定的指定组大小(40、30、20、10)完全相同,尽管结果大致相似。有什么方法可以通过使用sample 函数或 R 中的任何其他函数来获得具有相同组大小的随机洗牌结果?
【问题讨论】:
标签: r probability sampling