我有一个很大的数据集,里面有一些错误。所有零以上的数字都是正确的。误差低于零。我如何在Python中使用panda来运行整个数据集,确定数字是否低于零,然后将其更改为左右两侧单元格的平均值?
举个例子,如果一行说(8,8,7,6,9,-344,8(,我需要识别负数的代码,然后用(9+8/2(代替它,所以8.5
谢谢!
Youi可以将负值替换为缺失值,然后用除法2
:向前和向后填充缺失值
print (df)
0 1 2 3 4 5 6
0 8 8 7 6 9 -3434 8
df1 = df.mask(df < 0)
df1 = df1.ffill(axis=1).add(df1.bfill(axis=1)).div(2)
print (df1)
0 1 2 3 4 5 6
0 8.0 8.0 7.0 6.0 9.0 8.5 8.0