根据整个数据帧中的最大值对数据框中的行进行排序



我有一个数据帧,其中包含 3 个类别列 [A, B, C] 的概率值。现在我想根据以下条件对该数据帧的行进行排序:在整个数据帧中具有最高概率值的行(无论列如何(应该位于顶部,然后是概率值第二高的行,依此类推。

如果有人可以帮助我呢?

In [15]: df = pd.DataFrame(np.random.randint(1, 10, (10,3)))
In [16]: df
Out[16]:
0  1  2
0  9  2  8
1  6  6  9
2  2  4  9
3  2  1  2
4  2  5  3
5  3  4  9
6  8  7  3
7  6  4  1
8  3  3  8
9  7  2  7
In [17]: df.iloc[df.apply(np.max, axis=1).sort_values(ascending=False).index]
Out[17]:
0  1  2
5  3  4  9
2  2  4  9
1  6  6  9
0  9  2  8
8  3  3  8
6  8  7  3
9  7  2  7
7  6  4  1
4  2  5  3
3  2  1  2

最新更新