考虑以下示例数据,存储在名为df
的数据框中df
x y
2 4
1 5
0 8
如您所见,此数据框有3行。我想做的是采取100行样本,其中每行具有相同的选择概率(在这种情况下为1/3)。我的输出,我们称之为df_result看起来像这样:
df_result
x y
0 8
2 4
0 8
1 5
1 5
2 4
等.....直到取样100个。
我saw this previous stackoverflow post详细介绍了如何为数据帧采集随机样本:df[sample(nrow(df), 3), ]
然而,当我尝试采样100行时,这(可预测)不起作用,并且不允许分配采样概率。
任何提示?
Thanks`
答案 0 :(得分:0)
df <- read.table(header = TRUE,
text = "x y
2 4
1 5
0 8")
set.seed(1)
df[sample(nrow(df), 10, replace=T), ]
x y
1 2 4
2 1 5
2.1 1 5
3 0 8
1.1 2 4
3.1 0 8
3.2 0 8
2.2 1 5
2.3 1 5
1.2 2 4