对于pandas.DataFrame,我想让这个df中的行按照某一列,比如说col_a中元素的绝对值的大小,从大到小排列,该怎么操作?
1个回答
假如你的pd.DataFrame是df,你想按照col_1中的数值对df重新排列
降序排列(从大到小)
df.reindex(df['col_1'].abs().sort_values(ascending=False).index)升序排列(从小到大)
df.reindex(df['col_1'].abs().sort_values(ascending=True).index)例
>>> df
   col_1  col_2
0      2      1
1      4      3
2     -3      5
3     -5      7
>>> df.reindex(df['col_1'].abs().sort_values(ascending=False).index)
   col_1  col_2
3     -5      7
1      4      3
2     -3      5
0      2      1
    
  相关讨论
  随便看看