R:如何使用自定义频率对行进行采样

时间:2018-02-20 01:22:49

标签: r random frequency sample

我在R中有一个数据框,它有两列,一列是姓,另一列是每个姓的频率。我想根据频率值(0 - > 1)随机选择姓氏。

到目前为止,我已尝试使用示例函数,但它并不允许每个值的特定频率。不确定这是否可行:/

1 个答案:

答案 0 :(得分:0)

df1 <- data.frame(names = c("John","Mary"),freq=c(0.2,0.8))
df1
#   names freq
# 1  John  0.2
# 2  Mary  0.8

set.seed(1)
sample100 <- sample(
  x = df1$names,
  size = 100,
  replace=TRUE,
  prob=df1$freq)

table(sample100)
# sample100
# John Mary 
#   17   83