Python - 在 Pandas DataFrame 中用最新的正值替换负值
pythonserver side programmingprogramming更新于 2025/10/20 23:40:17
我们想用最新的正值替换负值。这样,如果没有正值,则值应更新为 0。
输入
例如,输入是 −
DataFrame: One two 0 -2 -3 1 4 -7 2 6 5 3 0 -9
输出
输出应为 −
One two 0 0 0 1 7 0 2 4 2 3 0 2
数据框掩码用于替换负值。为了填充缺失值,我们使用了正向填充。首先,让我们创建 pandas 数据框 −
# 创建 pandas 数据框
df = pd.DataFrame({'One': [-3, 7, 4, 0], 'two': [-6, -1, 2, -8]})
让我们执行掩码 −
df = df.mask(df.lt(0)).ffill().fillna(0).astype('int32')
示例
以下是代码 −
import pandas as pd
# 创建 pandas 数据框
df = pd.DataFrame({'One': [-3, 7, 4, 0],'two': [-6, -1, 2, -8]})
# 显示数据框
print"DataFrame:\n",df
# 掩码
df = df.mask(df.lt(0)).ffill().fillna(0).astype('int32')
# 显示更新的数据框
print"\nUpdated DataFrame: \n",df
输出
这将产生以下输出 −
DataFrame: One two 0 -3 -6 1 7 -1 2 4 2 3 0 -8 Updated DataFrame: One two 0 0 0 1 7 0 2 4 2 3 0 2
相关文章
有用资源
python 参考教程 - 该教程包含有关 python 的更多信息:https://www.cainiaomax.com/python/

