×

【Python特征工程系列】数值型数据缺失值处理方法总结(案例)

hqy hqy 发表于2025-07-10 10:18:52 浏览2 评论0百度已收录

抢沙发发表评论

这是我的第334篇原创文章。

一、引言

对于从事数据相关工作的小伙伴,面试的时候经常会被问到如何进行缺失值/异常值的处理,本文来梳理一下填补数值型缺失值的7种方法。

二、实现过程

准备数据

df = pd.read_csv(data.csv) df.drop("id",axis=1,inplace=True) print(数据:, df, sep=\n)

df:

查看缺失值情况

整体确实情况:

print(数据缺失值情况:, df.isnull().sum(), sep=\n)

数值型数据缺失情况:

cat_cols = [col for col in df.columns if df[col].dtype == "object"] # 类别型变量名 num_cols = [col for col in df.columns if df[col].dtype != "object"] # 数值型变量名 print(cat_cols) print(num_cols) print(数值型数据缺失情况:, df[num_cols].isnull().sum(), sep=\n)

2.1 均值填充

df[num_cols] = df[num_cols].fillna(df[num_cols].mean())

2.2 中位数填充

df[num_cols] = df[num_cols].fillna(df[num_cols].median())

2.3 众数填充

df[num_cols] = df[num_cols].fillna(df[num_cols].mode().iloc[0])

2.4 前后数据填充

df[num_cols] = df[num_cols].fillna(method=bfill)df[num_cols] = df[num_cols].fillna(method=bfill)

2.5 自定义填充

2.6 interpolate()插值方法填充

df[num_cols] = df[num_cols].interpolate()

2.7 机器学习预测填充

原文链接:

【Python特征工程系列】数值型数据缺失值处理方法总结(案例+源码)