首页 > 解决方案 > Python Pandas 数据框查找缺失值

问题描述

我正在尝试查找缺失值,然后删除缺失值。尝试在线查找数据,但似乎无法找到答案。

提取的数据框:

提取的数据框

在df中,对于1981年和1982年,应该是'-',即缺失值。我想找到缺失值然后删除缺失值。

使用 isnull 导出的数据框: 在此处输入图像描述

我使用了 df.isnull() 但在 1981 年和 1982 年,它被检测为“假”,这意味着有数据。但它应该是'-',因此被视为缺失值。

我在下面粘贴了我的代码。我错过了什么?

import pandas as pd

mydf = pd.read_excel('abc.xlsx', sep='\t')

df1 = mydf.set_index('Variables')
df = df1[0:10]
print(df)
print(df.isnull())

标签: pythonpandasdataframefindmissing-data

解决方案


这个问题有两点:找出哪些列有缺失值并删除这些值。

查找数据框中的缺失值df

missing = df.isnull().sum()
print(missing)

要删除这些缺失值,除了@jezrael 的考虑之外,如果这没有帮助,我建议您使用dropna

删除缺少所有元素的行。

df.dropna(how='all')

删除至少缺少一个元素的列。

df.dropna(axis='columns')

推荐阅读