sort pandas dataframe by sum of columns

bruvio :

I have a dataframe that looks like this

            Australia  Austria    United Kingdom  Vietnam
date                                                    
2020-01-30          9        0                 1       2
2020-01-31          9        9                 4       2

I would like to crate a new dataframe that inclues countries that have sum of their column > 4 and I do it

df1 = df[[i for i in df.columns if int(df[i].sum()) > 4]]

this gives me

            Australia  Austria    United Kingdom  
date                                                     
2020-01-30          9        0                 1      
2020-01-31          9        9                 4 

I now would like to sort the countries based on the sum of their column and than take the first 2

            Australia  Austria   
date                                    
2020-01-30          9        0        
2020-01-31          9        9

I know I have to use sort_values and tail. I just can't workout how

Quang Hoang :

IIUC, you can do:

s = df.sum()
df[s.sort_values(ascending=False).index[:2]]

Output:

            Australia  Austria
date                          
2020-01-30          9        0
2020-01-31          9        9

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=336788&siteId=1