2017-02-10 76 views
-2

如何獲得NAN值爲PANDA的所有位置。對於實施例,在熊貓中獲取所有行和列中NaN值的位置

sample = pd.DataFrame(np.zeros(shape=[5,5])) 
sample.iloc[0,0] = np.nan 
sample.iloc[2,3] = np.nan 
sample.iloc[4,3] = np.nan 

是熊貓數據幀,其中的位置,例如(0,0),(2,3)和(4,3)具有NaN值。因此,我想要一個像這樣的元組列表

[(0,0),(2,3),(4,3)] 

何我能得到這個嗎?

問候

+0

有許多現有的重複,請使用搜索功能。 – smci

+0

或invert [如何獲取Pandas數據框中所有非NaN項的行,列索引](http://stackoverflow.com/questions/36375939/how-to-get-row-column-indices-of-all-非楠項功能於大熊貓非數據幀) – smci

回答

0

在這種情況下,由於您的列和索引值,你可以先打開每個條目使用isnull爲布爾值,然後用一個lambda函數篩選只是真實值在括號中的行數和列數和然後將選定的索引轉換爲列表。

sample.isnull().stack()[lambda x: x].index.tolist() 
[(0, 0), (2, 3), (4, 3)]