Python Pandas找到缺失值的位置

来源:互联网 发布:软件开发速成 编辑:程序博客网 时间:2024/05/29 15:13

问题描述:
python pandas判断缺失值一般采用 isnull(),然而生成的却是所有数据的true/false矩阵,对于庞大的数据dataframe,很难一眼看出来哪个数据缺失,一共有多少个缺失数据,缺失数据的位置。

首先对于存在缺失值的数据,如下所示

import pandas as pdimport numpy as npdf = pd.DataFrame(np.random.randn(10,6))# Make a few areas have NaN valuesdf.iloc[1:3,1] = np.nandf.iloc[5,3] = np.nandf.iloc[7:9,5] = np.nan
         0         1         2         3         4         50  0.520113  0.884000  1.260966 -0.236597  0.312972 -0.1962811 -0.837552       NaN  0.143017  0.862355  0.346550  0.8429522 -0.452595       NaN -0.420790  0.456215  1.203459  0.5274253  0.317503 -0.917042  1.780938 -1.584102  0.432745  0.3897974 -0.722852  1.704820 -0.113821 -1.466458  0.083002  0.0117225 -0.622851 -0.251935 -1.498837       NaN  1.098323  0.2738146  0.329585  0.075312 -0.690209 -3.807924  0.489317 -0.8413687 -1.123433 -1.187496  1.868894 -2.046456 -0.949718       NaN8  1.133880 -0.110447  0.050385 -1.158387  0.188222       NaN9 -0.513741  1.196259  0.704537  0.982395 -0.585040 -1.693810

df.isnull()会产生如下结果

       0      1      2      3      4      50  False  False  False  False  False  False1  False   True  False  False  False  False2  False   True  False  False  False  False3  False  False  False  False  False  False4  False  False  False  False  False  False5  False  False  False   True  False  False6  False  False  False  False  False  False7  False  False  False  False  False   True8  False  False  False  False  False   True9  False  False  False  False  False  False

df.isnull().any()则会判断哪些”列”存在缺失值

0    False1     True2    False3     True4    False5     Truedtype: bool

对于该问题,可以采用如下方式解决:

df[df.isnull().values==True]
Out[126]:           0         1         2         3         4         51  1.090872       NaN -0.287612 -0.239234 -0.589897  1.8494132 -1.384721       NaN -0.158293  0.011798 -0.564906 -0.6071215 -0.477590 -2.696239  0.312837       NaN  0.404196 -0.7970507  0.369665 -0.268898 -0.344523 -0.094436  0.214753       NaN8 -0.114483 -0.842322  0.164269 -0.812866 -0.601757       NaN

可以只显示存在缺失值的行列,清楚的确定缺失值的位置。

2 0
原创粉丝点击