将Dataframe汇总为加权平均值系列

时间:2014-04-01 16:12:41

标签: python pandas

这可能是一项复杂的任务。假设我们有这样的数据框:

MSFT   AAPL   GE
0.1     na    na
0.2     0.1   na
0.1     0.2   0.1

我想按如下方式聚合数据框:

每当只有一个列具有非na值时,该值将是平均值,但是当多个列具有非na值时,我们计算加权平均值,其中权重是到此为止的累积乘积。得到的数据帧和计算如下图所示。

avg
0.1
1.1*0.2/(1.1 + 1) + 1*0.1/(1.1+1)
1.1*1.2*0.1/(1.1*1.2+1.1+1) + 1.1*0.2/(1.1*1.2+1.1+1)+ 1*0.1/(1.1*1.2+1.1+1)

1 个答案:

答案 0 :(得分:0)

假设您的DataFrame名为'd' 试试这个:

d.mean(axis=1)

这应该有效。