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,否则复制先前的余额。
问候,
解决方案
fillna
具有填充方法的熊猫'bfill'
(使用下一个有效观察来填补空白)应该可以满足您的需求:
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
推荐阅读
- java - 找不到 Open Liberty 19.0.0.7 batchManagement-1.0 功能
- c# - 表绑定到数据源时 setOrdinal 无法正常工作
- python - 预处理图像以提取文本并去除噪声
- json - 创建 Arm 模板以在 azure 应用服务上托管 php 应用
- ios - 如何修改 SwiftUI 预览的 UIView 属性?
- reactjs - 安全性 - 本地存储与 Cookie
- javascript - 如何更新购物车中的订单数量(增量和减量)?
- jquery - 通过 jquery 和 ajax 添加 url 参数
- angular - 尝试将 cesium 与 Angular CLI (v7) 一起使用时生成错误
- embedded-linux - 我无法操作我的通用 I/O