Pandas数据分析:数据缺失处理问题
在 Pandas 进行数据分析时,数据缺失(NaN)是一个常见的问题。以下是一些处理数据缺失的常用方法:
- 删除缺失值:如果你确定某些记录有缺失值且对分析结果影响不大,可以直接使用
dropna()
方法删除含有缺失值的行或列。
import pandas as pd
data = {'A': [1, 2], 'B': [3, np.nan]},
index=['row1', 'row2'],
columns=['col_A', 'col_B']
df = pd.DataFrame(data)
# 删除含有缺失值的行
df_row_with_missing = df[df.index == 'row2']]
df = df.drop('row2')
print("Original DataFrame:")
print(df)
- 填充缺失值:Pandas 提供了多种填充缺失值的方法,例如:
- 使用中位数、平均值或众数填充数值列:
df['col_B'] = df['col_B'].fillna(df['col_B'].median())
- 用某个特定值(如0)填充分类列的缺失值:
df['col_A'] = df['col_A'].fillna(0, method='ffill')
- 用自定义函数或 Series 来填充:
def custom_fill(value):
return value if pd.isnull(value) else 0
df['col_B'] = df['col_B'].fillna(custom_fill)
根据实际情况选择合适的填充方法。
还没有评论,来说两句吧...