- dropna() 函数用于删除含有缺失值的行或列。它有以下常用参数:
-
axis:指定是删除行(axis=0)还是删除列(axis=1)。
-
how:指定删除行或列的条件,默认为 any,表示只要存在一个缺失值就删除,也可以设置为 all,表示全部缺失值才删除。
-
subset:指定删除行或列的范围,默认为None,表示删除所有含有缺失值的行或列。
示例:
import pandas as pd data = https://www.yisu.com/ask/{'Name': ['Tom', 'John', 'Amy', 'Emily', 'Mike'], 'Age': [20, 25, None, 30, 35], 'Gender': ['M', 'M', 'F', None, 'M']} df = pd.DataFrame(data) # 删除所有含有缺失值的行 df.dropna() # 删除所有含有缺失值的列 df.dropna(axis=1) # 删除Age列中含有缺失值的行 df.dropna(subset=['Age'])
- notnull() 函数用于判断每个元素是否为缺失值,返回一个布尔值的 Series。它可以用于过滤数据集中含有缺失值的行或列。
示例:
import pandas as pd data = https://www.yisu.com/ask/{'Name': ['Tom', 'John', 'Amy', 'Emily', 'Mike'], 'Age': [20, 25, None, 30, 35], 'Gender': ['M', 'M', 'F', None, 'M']} df = pd.DataFrame(data) # 过滤掉所有含有缺失值的行 df = df[df.notnull().all(axis=1)] # 过滤掉所有含有缺失值的列 df = df[df.notnull().all(axis=0)]