[英]How to calculate row weighted mean of big data?
我在下面有一个数据集:
x =
BC_aitk90_0-5cm BC_aitk98_0-5cm BC_aitk98b_0-5cm BC_nn_0-5cm
1: 1.6382072 4.281057 4.607484 15.181894
2: 2.2413662 5.136081 5.341605 16.192835
3: 1.0995348 3.881533 3.493945 12.063029
4: 1.3492518 4.219009 3.818655 13.996832
5: 2.9033433 6.072661 6.149606 17.826441
我想计算行加权平均值,但我无法获得代码和答案。 我的体重是:
x =
W = c(0.83, 0.85, 0.87, 0.93)
这里有两个答案:
df = data.frame(a = c(1:3), b= c(4:6))
w = c(0.5,0.3)
wm1 = t(colSums(apply(df,1,function(x) x*w)) / sum(w))
# or
wm2 = apply(df,1,function(x) weighted.mean(x,w))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.