2017-01-19 39 views
1

我有填充有隨機數從標準正態分佈(索引是數字0到5的6×4大熊貓數據幀,和列「A」,「B」,「C」,和「d」。如何熊貓採用了一系列的對象切片數據幀?

import pandas as pd 

df = pd.DataFrame(np.random.randn(6,4), index=[0,1,2,3,4,5], columns=list('ABCD)) 

是這樣的: Data Frame

我添加了一個列有一些字符串:

df['E'] = ['one', 'one', 'two', 'three', 'four', 'three'] 

現在的數據幀是這樣的: enter image description here

引用列E,我僅能夠獲得與關鍵字「一」或「四」行:

x = df['E'].isin(['one','four']) 
df[x] 

我得到這個: enter image description here

但是當我檢查的X型的,這是一個熊貓系列(pandas.core.series.Series)。

我不明白怎麼了一系列解釋爲切片數據幀?我想了解一些基本的層面。它如何知道要返回哪些行?如果我打印x,這是一個充滿布爾值的系列。

回答

1

這是布爾索引。簡單的理解方式是,布爾值與數據幀對齊。無論布爾序列是否爲真,該行都被拾取。否則(false),該行被刪除。例如,x具有索引0,1,4真,所以用這些指數數據幀行你的情況拾取,即,第一,第二和第五行。