在数据帧中查找空值的有效方法

时间:2016-09-10 00:44:22

标签: python pandas numpy

import pandas as pd
import numpy as np

df = pd.read_csv ('file',low_memory=False)

df_null = df.isnull()
mask = (df_null == True)
i, j = np.where(mask)
print (list(zip(df_null.columns[j], df['Column1'][i])))

这就是我现在拥有的。基本上,我已经创建了两个数据帧,并使用空值的索引从那里选择了A列中的相应值。

问的是,使用Dataframes是否有更高效,更快捷的方法,我承认,我不太清楚。

1 个答案:

答案 0 :(得分:1)

我通常在pandas中用于按列标识空值的例程如下:

import pandas as pd

df = pd.read_csv("test.csv")

null_counts = df.isnull().sum()
null_counts[null_counts > 0].sort_values(ascending=False)

这将打印具有空值的列,并按每个列的空值数对其进行排序。

示例输出:

PoolQC          1453
MiscFeature     1406
Alley           1369
Fence           1179
FireplaceQu      690
LotFrontage      259
GarageYrBlt       81
GarageType        81
GarageFinish      81
GarageQual        81
GarageCond        81
BsmtFinType2      38
BsmtExposure      38
BsmtFinType1      37
BsmtCond          37
BsmtQual          37
MasVnrArea         8
MasVnrType         8
Electrical         1
dtype: int64