pandas 学习(四)—— 数据处理(清洗)、缺失值的处理

时间:2021-09-29 18:57:43

创建 DataFrame:

df = pd.DataFrame(np.random.randint(0, 10, (2, 4)), columns=list('ABCD'))

1. 缺失值的处理

  • 所有缺失值字段填充为 0:df.fillna(0),一定要十分注意的一点是,df.fillna() 操作默认(inplace=False)不是 inplace,也即不是对原始 data frame 直接操作修改的,而是创建一个副本,对副本进行修改;
    • df.fillna(0, inplace=True)
    • df = df.fillna(0)
  • 舍弃:
    • 舍弃那些全行为 NaN 的行,以及全列为 NaN 的行:
      • df.dropna(axis=[0, 1], how=’all’)
    • 删除某些行和列:
      • df.drop([], axis=1, inplace=True) ⇒ axis = 1,删除列;
      • df.drop([], axis=0, inplace=True) ⇒ axis = 0,删除行;
  • 均值填充

    age_mean = data.Age.mean() # age_mean = data['Age'].mean()
    data.Age[data['Age'].isnull()] = age_mean # data['Age'] == data.Age 二者是等效的