Pandas 会为缺少的值分配 NaN 值。我们可以选择对这些NaN值对应的行列进行删除,也可以选择填充。

删除NaN值

  1. data.dropna(how = ‘all’) # 传入这个参数后将只丢弃全为缺失值的那些行
  2. data.dropna(axis = 1) # 丢弃有缺失值的列
  3. data.dropna(axis=1,how=“all”) # 丢弃全为缺失值的那些列
  4. data.dropna(axis=0,subset = [“Age”, “Sex”]) # 丢弃‘Age’和‘Sex’这两列中有缺失值的行

默认是原始DataFrame不会改变。你始终可以在 dropna() 方法中将关键字 inplace 设为 True,就可以改变原始的data。

填充NaN值

使用data.isnull()方法返回一个大小和data一样的布尔型 DataFrame,并用 True 表示具有 NaN 值的元素,用 False 表示非 NaN 值的元素。

  1. data.fillna(method = ‘ffill’, axis = 0) # 将通过前向填充 (ffill) 方法用同一列的前一个数作为填充
  2. data.fillna(method = ‘ffill’, axis = 1) # 将通过前向填充 (ffill) 方法用同一行的前一个数作为填充
  3. data.fillna(method = ‘backfill’, axis = 0) # 将通过前向填充 (ffill) 方法用同一列的后一个数作为填充
  4. data.fillna(method = ‘backfill’, axis = 1) # 将通过前向填充 (ffill) 方法用同一行的后一个数作为填充
  5. data.interpolate(method = ‘linear’, axis = 0) # 将通过 linear 插值使用同一列的中间值作为填充
  6. data.interpolate(method = ‘linear’, axis = 1) # 将通过 linear 插值使用同一行的中间值作为填充

参考链接

  1. https://www.jb51.net/article/163872.htm
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐