在R
中,我想使用权重x
按组y
绘制数据框列w
的内核密度。
我的问题是加权是在所有数据上完成的,而不是按组完成的。这导致“权重总和<1”错误。
这是一个MWE:
n = 10000
df <- data.frame(x = rnorm(n), y = rbinom(n,1,prob=0.25), w = exp(rnorm(n)))
# Make density plots by y, weighted by w
ggplot(df,aes(x=x,group=y)) + geom_density(aes(weights=w/sum(w)))
正如您所看到的,这些密度都没有整合到一个密度中。
如何让小组完成加权?