在R中采样数据

时间:2018-04-17 14:46:28

标签: sampling data-generation

我想从以下格式中抽取100x5数据点: 概率为0.6,2。否则(概率为0.4,10 + Epsilon) Epsilon~ {-2,-1,0,1,2}

这是我做的,

data.frame(sapply(1:5, function(x) sample(c(2,10 +sample(-2:2,1)), 100, prob=c(0.6, 0.4),replace=T)))

但它不起作用。它采样"样本(-2:2,1)"每列只有一次..

该怎么办?

1 个答案:

答案 0 :(得分:0)

我为这个特殊情况找到了一个简单的解决方案:

data.frame(sapply(1:5, function(x) sample(c(2,8,9,10,11,12), 100, prob=c(0.6, 0.08,0.08,0.08,0.08,0.08),replace=T)))

但是什么是更通用的解决方案。例如,如果Epsilon来自连续分销?