如何使用Pandas将csv文件中'x'标记的缺失值替换为所在列的平均值
Pandas替换'x'缺失值为列平均值的实现方法
由于数据中的'x'是字符串格式的缺失标记,会导致原本的数值列被识别为object类型,无法直接计算平均值,按以下步骤操作即可:
第一步:将所有
'x'转换为Pandas可识别的空值NaN,同时将对应列转换为数值类型
全表批量处理的代码如下:import pandas as pd # 你原本的导入代码 df = pd.read_csv('file.csv') # 非数值内容(即'x')会被自动转为NaN,同时列转为数值类型 df = df.apply(pd.to_numeric, errors='coerce')如果表中存在不需要处理的非数值列,可以仅针对指定数值列处理:
# 替换为你实际需要处理的数值列名 num_cols = ['列1', '列2', '列3'] df[num_cols] = df[num_cols].apply(pd.to_numeric, errors='coerce')第二步:用每列的平均值填充空值
# numeric_only=True参数表示仅计算数值列的平均值,避免非数值列报错 df = df.fillna(df.mean(numeric_only=True))
内容的提问来源于stack exchange,提问作者lilek3
相关产品推荐
相关产品推荐

