2016-01-25 376 views
-1

我有一個數據框如下所示,我想執行一個關鍵點,以便我可以繪製每年排名前三位的國家國內生產總值。所以我需要以這樣一種方式來調整數據框架,使其返回到每年有3個國家GDP最高的3個國家熊貓樞軸數據幀

任何想法?

Year Country GDP 
01 USA  100 
01 UK  80 
01 Japan  50 
01 China  75 
02 USA  90 
02 UK  65 
02 Japan  70 
02 China  80 
+0

你能展示理想的結果是怎樣的嗎? – joris

+0

[此問題](http://stackoverflow.com/questions/20069009/pandas-good-approach-to-get-top-n-records-within-each-group)回答你的問題,或者你問的是後續密謀問題? – ako

回答

2

你想要類似的東西嗎?

In [19]: df 
Out[19]: 
    Year Country GDP 
0  1  USA 100 
1  1  UK 80 
2  1 Japan 50 
3  1 China 75 
4  2  USA 90 
5  2  UK 65 
6  2 Japan 70 
7  2 China 80 

In [20]: df.sort_values(['Year', 'GDP'], ascending=[True, False]).groupby('Year').head(3) 
Out[20]: 
    Year Country GDP 
0  1  USA 100 
1  1  UK 80 
3  1 China 75 
4  2  USA 90 
7  2 China 80 
6  2 Japan 70 
+0

謝謝,作品完美,有趣,頭部需要在groupby之後創建正確的剪輯 – Marcus