我正在尝试根据某些条件对数据集进行引导。
下面是我的数据快照,第一行是列名。我的数据大约有1万行。
v1
0
0
0
0
1
0
0
0
1
0
0
我想通过随机重新采样v1直到生成1来生成一个新的数据集,并进行观察计数。例如,第一次迭代对数据重新采样x次,直到出现1并记录它对数据重新采样的次数。
由于不清楚,请添加更多详细信息...
这是示例输出...
bootstrap_output
3
10
5
1
6
7
数字是v1中多少次“重采样”以获得值1的结果。 对于第一行,它将对v1进行三次重新采样,直到有一个1。因此,重新采样的顺序为(0,0,1)。第二行的重采样顺序为(0,0,0,0,0,0,0,0,0,1,)
答案 0 :(得分:1)
我认为您正在寻找一种几何分布,其中0表示失败,1表示成功,并且您采样直到选择1。
set.seed(1L)
DF <- data.frame(v1=c(0,0,0,0,1,0,0,0,1,0,0))
(bootstrap_output <- rgeom(6, sum(DF$v1) / nrow(DF)))
使用set.seed(1L)
的示例输出:
#[1] 3 2 13 0 6 1