2017-04-10 50 views
0

DF看起来象下面这样: Age, Sex...他们都是指数,只有一列名为Importance如何按价值排列df行?

     Importance 
Onset Delta    0.121048 
Site of Onset - Limb  0.000036 
Site of Onset - Bulbar 0.000382 
Age      0.008650 
Sex      0.000978 
Race - Caucasian   0.001274 
Race - Other    0.001776 
Sodium_Dmax    0.007689 

我想重新塑造DF,通过根据Importance排名行,我怎么能做到这一点? 我试图

groupby(['Importance'],as_index=False) 

但不起作用 感谢

回答

1

使用sort_values功能:

test = df.sort_values('Importance') 

假设df是数据框,如果你想在聚合

+1

虽然我相信'df.sort()'已被弃用。在最新的熊猫中正确的解决方案是'df.sort_values()'。 – oscarbranson

+0

这是至少perfert me.thx – user815408

+0

@旺接受请 –

0

df.groupby()将用于数据,你要找的是df.sort_values()

使用df.sort_values(),您传入by字符串,告诉pandas要排序的列。

为您的代码,我希望df.sort_values(by='Importance')

你可以这样做的结果分配给新的数据帧,或者通过在inplace=true参数排序的DF。

您可以查看文档的df.sort_values()方法here

1

如果您的数据的结构数据框,您可以使用排序功能:

df.sort(['Importance'],ascending=True) or 
df.sort(['Importance'],ascending=False) 

“真”或“假”取决于你的选择,这意味着您的数据按降序或升序排列。