pandas中NaN缺失值的处理方法

pandas中NaN缺失值的处理方法

在pandas中,处理NaN缺失值的方法有以下几种:

  1. 删除缺失值:使用dropna()函数删除包含NaN值的行或列。

  2. 填充缺失值:使用fillna()函数将NaN值替换为指定的值或使用插值方法进行填充。

  3. 判断缺失值:使用isnull()函数判断数据中是否存在NaN值。

  4. 替换缺失值:使用replace()函数将NaN值替换为指定的值。

下面是一些示例代码:

  1. 删除缺失值:

import pandas as pdimport numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
df.dropna()  # 删除包含NaN值的行
df.dropna(axis=1)  # 删除包含NaN值的列
  1. 填充缺失值:

import pandas as pdimport numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
df.fillna(0)  # 将NaN值替换为0df.fillna(method='ffill')  # 使用前向填充法进行填充
df.fillna(method='bfill')  # 使用后向填充法进行填充
  1. 判断缺失值:

import pandas as pdimport numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
df.isnull()  # 判断是否存在NaN值
  1. 替换缺失值:

import pandas as pdimport numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, np.nan], 'C': [7, 8, 9]})
df.replace(np.nan, 0)  # 将NaN值替换为0