采样数据帧中的行百分比为1000次,每次采样都有标识

时间:2017-03-24 02:21:47

标签: r for-loop random

this问题相关。

gender <- c("F", "M", "M", "F", "F", "M", "F", "F")
age    <- c(23, 25, 27, 29, 31, 33, 35, 37)
mydf <- data.frame(gender, age)

mydf[sample(nrow(mydf), round(0.25*nrow(mydf))),]

但我希望随机抽样1000次,带识别号。

例如,从这1000个随机样本中我想调用第5或第70个样本。我怎样才能做到这一点?

1 个答案:

答案 0 :(得分:1)

我们可以replicate对其进行1000次抽样,以便将其存储在list

lst <- replicate(1000, mydf[sample(nrow(mydf), round(0.25*nrow(mydf))),] , simplify = FALSE)

然后,通过使用索引

进行子集化来获取第5个和第70个list元素
lst[c(5, 70)]