在pandas数据系列中获取NANs索引的最佳方法是什么

时间:2017-10-20 17:13:47

标签: python pandas numpy

假设我们有一些数据系列:

0  'one'
1  'two'
2   NAN
3   'three'
4   NAN
5   NAN

现在我想得到所有NAN元素的内容。所以使用python的pandas lib我会做那样的事情:

import pandas as pd
import numpy as np


data = pd.Series(['one', 'two', np.nan, 'three', np.nan, np.nan])
nan_index = data.index.difference(data.dropna().index)

但是,我觉得这不是一种吝啬的方式。

2 个答案:

答案 0 :(得分:1)

使用isnull

data[data.isnull()].index
Out[739]: Int64Index([2, 4, 5], dtype='int64')

data.isnull().nonzero()

答案 1 :(得分:1)

In [11]: data.index[data.isnull()]
Out[11]: Int64Index([2, 4, 5], dtype='int64')

In [12]: np.where(data.isnull())[0]
Out[12]: array([2, 4, 5], dtype=int64)