【发布时间】:2021-07-05 08:22:29
【问题描述】:
我的数据集如下所示:
x <- data.table(id=c(1,1,1,2,2,3,4,4,4,4), cl=c("a","b","c","b","b","a","a","b","c","a"))
我正在尝试根据 cl 中的元素为每个组 (id) 选择一行的概率。
我尝试了以下方法:
x[,num:=.N, keyby=.(id,cl)]
x[,den:=.N, keyby=.(id)]
x[,prob:=num/den, ]
有没有更好的方法来做到这一点?
最终,我的最终目标是使用概率值作为权重,同时对每组 (id) 的一行进行采样。任何更好的替代方法来达到这些权重将不胜感激。
【问题讨论】:
标签: r data.table counting resampling summarize