我想使用 dplyr::summarise_all() 和 weighted.mean 来计算每个组的许多列的加权平均值。
我尝试直接使用匿名函数,但它返回一个错误:'x'和'w'必须具有相同的长度。我知道我可以使用 summarise() 和 weighted.mean,但是这样我需要指定所有列名,这不是我想要的。
result = df%>%
group_by(A)%>%
summarise_all(function(x){weighted.mean(x, .$B)})
这里数据框有组列A、权重列B和其他列。我希望 A 中的每个组的 B 列的其他列值的加权平均值。我希望我可以使用 dplyr 和 weighted.mean 来做到这一点,但我对其他可用方法没问题。