让DataFrame中的行按照某一列元素的绝对值从大到小排列

  统计/机器学习 数据预处理 Python
1

对于pandas.DataFrame,我想让这个df中的行按照某一列,比如说col_a中元素的绝对值的大小,从大到小排列,该怎么操作?

 

道画师   2017-03-27 12:36



   1个回答 
5

假如你的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



派大星   2017-03-28 10:13



相关问题

怎么求一个数组的移动平均数   1回答

python的dataframe如何重新排列行或者列   1回答

在数据预处理阶段,特征的标准化有哪些方法?   1回答

对进行回归分析之前,如何处理不同类型的变量?   1回答

sklearn OneHotEncoder string类型报错   1回答

pandas怎么读入tsv格式的数据   1回答

怎么把collections.Counter的计数结果转为pandas的DataFrame   2回答

决策树、随机森林中的多重共线性问题   3回答

进行K-Means聚类前,需要对数据做怎样的预处理?   1回答

特征归一化对K Means有影响吗?   3回答

分类变量,进行One hot编码,维度升高,如何处理?   0回答

hashing trick或者feature hashing是什么   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!