Python - 在 Pandas DataFrame 中用最新的前一个正值替换负值
我们想用最新的前一个正值替换负值。这样,如果前面没有正值,则该值应更新为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
数据框屏蔽用于替换负值。为了填充缺失值,我们使用了正向填充。首先,让我们创建熊猫数据框-
#创建熊猫数据框
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
#创建熊猫数据框
df = pd.DataFrame({'One': [-3, 7, 4, 0],'two': [-6, -1, 2, -8]})
#displayingtheDataFrame
print"DataFrame: \n",df
#masking
df = df.mask(df.lt(0)).ffill().fillna(0).astype('int32')
#displayingtheupdatedDataFrame
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
热门推荐
10 招标文案祝福语简短模板
11 客户激活花束祝福语简短
12 韩语妹妹生日祝福语简短
13 睡觉祝福语女生文案简短
14 梳子结婚蛋糕祝福语简短
15 牛年祝福语简短16字
16 男士结婚晚宴祝福语简短
17 接亲新婚祝福语大全简短
18 爷爷生日手册祝福语简短