【发布时间】:2019-01-11 07:41:55
【问题描述】:
我有一个如下所示的 df。我想用两个值之间的某个值填充NA。
col1 col2 col3 col4 col5 col6 col7 col8
0 NaN 12 12.0 4.0 NaN NaN NaN NaN
1 54.0 54 32.0 11.0 21.0 NaN NaN NaN
2 3.0 34 34.0 NaN NaN 43.0 NaN NaN
3 34.0 34 NaN NaN 34.0 34.0 34.0 34.0
4 NaN 34 34.0 NaN 34.0 34.0 34.0 34.0
例如,我不想在第一行和第二行填写,因为NaN 不会出现在值之间。但我想在 col4 和 col5 的第三行填写。因为这两列在两个值(col3 和 col6)之间包含 NaN。
如何做到这一点,
预期输出:
col1 col2 col3 col4 col5 col6 col7 col8
0 NaN 12 12.0 4.0 NaN NaN NaN NaN
1 54.0 54 32.0 11.0 21.0 NaN NaN NaN
2 3.0 34 34.0 -100 -100 43.0 NaN NaN
3 34.0 34 -100 -100 34.0 34.0 34.0 34.0
4 NaN 34 34.0 -100 34.0 34.0 34.0 34.0
针对这个问题
我不能简单地使用fillna,因为它会完全填充,同样我不能使用ffill 或bfill,因为它违反了前导值或尾随值。在这个阶段我一无所知。任何帮助都将是可观的。
注意:在与此相关的搜索之后,我提出了这个问题。我没有找到与此相关的任何重复项。如果您发现可以随意将其标记为重复。
【问题讨论】: