python - fillna 没有给出预期的结果

标签 python python-3.x pandas dataframe

我正在尝试替换 pandas 数据框中的 NaT。

orders.PAID_AT

0                       NaT
1                       NaT
2                       NaT
3                       NaT
4                       NaT
6                       NaT
7                       NaT
8                       NaT
9                       NaT
10                      NaT
11      2018-08-04 16:19:10
12      2018-08-04 16:19:10
13                      NaT
14                      NaT
15      2018-08-04 13:49:08
16      2018-08-04 13:49:08
18                      NaT
19                      NaT
20                      NaT
21      2018-08-04 12:41:48

第 0..10 行需要用第 11 行等的值填充。不知何故我无法正确处理:

orders.PAID_AT.fillna(method='bfill', inplace=True)

我得到的结果与上面相同。我在这里缺少什么?

最佳答案

为了避免chained assignments分配回来:

orders.PAID_AT = orders.PAID_AT.bfill()

关于python - fillna 没有给出预期的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52035467/

相关文章:

Python 的 "StandardScaler"和 "LabelEncoder"以及 "fit"和 "fit_transform"不适用于同时包含 float 和字符串的 CSV

python - 在 Django 管理中,包括 auth.User 作为内联

python - 如何在同一个 docker-compose.yml 中连接 2 个 docker 组件

顶级模块代码中的 Python @ (at) 前缀 - 它代表什么?

python - 获取 k 倒数最近邻

python - 尝试编写一个 Python/pandas 函数来更新特定列中等于 0 的行?

python - Pandas 数据帧到 csv : Specifying decimal separator for mixed type

python - 如何将8bit(0-255)数据表保存为图像文件,然后从图像中检索数据?

python - 从递归函数中消除全局变量

python - (Cython) 在 __pow__ 中使模参数可选