下面我列出了代碼。我有數據框a,其中有很多列,我試圖從數據框a中查詢'國家'兩列'等級'的子集到我的新數據框中。爲什麼這個代碼不起作用?數據幀子集
df= a['Rank', 'Country']
如果我使用
df=a['Rank']
它工作正常。
下面我列出了代碼。我有數據框a,其中有很多列,我試圖從數據框a中查詢'國家'兩列'等級'的子集到我的新數據框中。爲什麼這個代碼不起作用?數據幀子集
df= a['Rank', 'Country']
如果我使用
df=a['Rank']
它工作正常。
需要另一個[]
:
df= a[['Rank', 'Country']]
的是一樣的,但它是不太打字:
df = a.loc[:, ['Rank', 'Country']]
樣品:
a = pd.DataFrame({'Rank':[1,2,3],
'Country':[4,5,6],
'C':[7,8,9]})
print (a)
C Country Rank
0 7 4 1
1 8 5 2
2 9 6 3
df = a.loc[:, ['Rank', 'Country']]
print (df)
Rank Country
0 1 4
1 2 5
2 3 6
df = a[['Rank', 'Country']]
print (df)
Rank Country
0 1 4
1 2 5
2 3 6
您還可以檢查docs:
您可以通過列的列表,以
[]
的順序選擇列。
也爲選擇列一列DataFrame
使用[]
太:
df = a[['Rank']]
print (df)
Rank
0 1
1 2
2 3
但Series
:
s = a['Rank']
print (s)
0 1
1 2
2 3
Name: Rank, dtype: int64
謝謝你的幫助! –
很高興能幫到你!如果我的回答很有幫助,請不要忘記[接受](http://meta.stackexchange.com/a/5235/295067)它。謝謝。 – jezrael
看一看他們的文檔:HTTP://pandas.pydata。 org/pandas-docs/stable/indexing.html#basics 這應該回答你的問題。 – holzkohlengrill