首页 > 解决方案 > Python 寿命预期

问题描述

尝试使用 panda 来计算具有复杂方程的预期寿命。逐列相乘或相除并不难。我的数据是

   A      b     
1  0.99  1000
2  0.95   =0.99*1000=990
3  0.93   = 0.95*990 

字段 A 已填充,字段 be 只有 1000 字段 b (b2) = A1*b1 尝试移位功能,仅得到 b2 的结果,其余为零任何帮助,请感谢 mazin

标签: python-3.x

解决方案


IIUC,如果您开始:

>>> df
      A       b
0  0.99  1000.0
1  0.95     NaN
2  0.93     NaN

然后你可以这样做:

df.loc[df.b.isnull(),'b'] = (df.A.cumprod()*1000).shift()

>>> df
      A       b
0  0.99  1000.0
1  0.95   990.0
2  0.93   940.5

或更一般地说:

df['b'] = (df.A.cumprod()*df.b.iloc[0]).shift().fillna(df.b.iloc[0])

推荐阅读