【发布时间】:2018-05-20 08:39:14
【问题描述】:
我有以下数据框
ID <- c(1,2,3,4,5,6)
pop <- c(10,10,10,10,1000,1000)
df <- data.frame(pop,ID)
现在我想从这个数据框中绘制唯一 ID,条件是,我绘制人口大于或等于 1000 的 ID 的概率为 0.1,以及绘制人口 ID 的概率低于 1000 的为 0.9。
这是我想出的代码:
sample(c(df$ID[df$pop>=1000],df$ID[df$pop<1000]),3, prob=c(0.1,0.9))
但是,我收到以下错误消息:
Error in sample.int(length(x), size, replace, prob) :
incorrect number of probabilities
我怎样才能重写这个问题,使它在不为每个 ID 分配概率的情况下工作?
【问题讨论】:
标签: r conditional sample sampling