我有一个多个值为零的数据框。
我想用该列的平均值替换零值,而无需重复代码。
我有一个称为运行时,预算和收入的列,它们全为零,我想用该列的平均值替换那些零值。
我曾尝试一次在同一列上执行此操作:
print(df['budget'].mean())
-> 14624286.0643
df['budget'] = df['budget'].replace(0, 14624286.0643)
他们是否有编写函数的方式,而不必为所有列的每个零值多次编写代码?
最佳答案
所以这是pandas
数据帧,我将使用mask
将所有0变为np.nan
,然后是fillna
df=df.mask(df==0).fillna(df.mean())
关于python - Pandas :如何用该列的平均值替换一列中的零值,对于所有具有零值的列,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55319655/