回填数据框

时间:2019-01-21 16:43:19

标签: python

我有一个包含3列的数据框。像这样:

Data        Initial_Amount   Current
31-01-2018
28-02-2018
31-03-2018
30-04-2018  100              100
31-05-2018  100               90
30-06-2018  100               80

我想用“初始金额”来填充前面的行:

Data        Initial_Amount   Current
31-01-2018  100              100
28-02-2018  100              100 
31-03-2018  100              100
30-04-2018  100              100
31-05-2018  100               90
30-06-2018  100               80

因此找到:

  • 填充了初始金额的第一行非空行
  • 使用它来回填初始金额到开始日期
  • 如果它是第一行,而当前为空,则复制Initial_Amount,否则复制先前的余额。

此致

1 个答案:

答案 0 :(得分:1)

使用填充方法'bfill'的熊猫fillna(使用下一个有效观察值来填补空白)应该可以满足您的需求:

In [13]: df.fillna(method='bfill')

Out[13]: 
         Data  Initial_Amount  Current
0  31-01-2018           100.0    100.0
1  28-02-2018           100.0    100.0
2  31-03-2018           100.0    100.0
3  30-04-2018           100.0    100.0
4  31-05-2018           100.0     90.0
5  30-06-2018           100.0     80.0