gpt4 book ai didi

python - 如果后续值非零,则将 pandas 零值替换为 ffill 非零值

转载 作者:太空宇宙 更新时间:2023-11-03 14:04:32 27 4
gpt4 key购买 nike

我需要用前几行非零值替换 pandas 中的“0”行数据,如果且仅当“0”之后的行中的值不为零时。

101
92
78
0
107
0
0

会变成:

101
92
78
78
107
0
0

任何想法如何做到这一点将不胜感激:-)

谢谢!

最佳答案

使用shift你可以做到

In [608]: df.loc[(df.val == 0) & (df.val.shift(-1) != 0), 'val'] = df.val.shift(1)

In [609]: df
Out[609]:
val
0 101.0
1 92.0
2 78.0
3 78.0
4 107.0
5 0.0
6 0.0

关于python - 如果后续值非零,则将 pandas 零值替换为 ffill 非零值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45080403/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com