【发布时间】:2014-11-07 04:50:51
【问题描述】:
我需要找到最快的方法来对包含数百万行和大约一百列的数据框中的每一行进行排序。
所以是这样的:
A B C D
3 4 8 1
9 2 7 2
需要成为:
A B C D
8 4 3 1
9 7 2 2
现在我正在对每一行应用排序并逐行构建一个新的数据框。我还在为每一行做一些额外的、不太重要的事情(因此我使用 pandas 而不是 numpy)。改为创建列表列表然后立即构建新数据框会更快吗?还是我需要去 cython?
【问题讨论】:
-
转置、排序、转回?
-
转置它如何使排序更快?
-
您只需更改映射的“视图”...所以您仍然需要进行排序,但是您将 1mx100 变成 100x1m 在同一个空间中,排序,然后反转它,您只是对数据有不同的看法
-
我还是一头雾水。我只需要对一百万列而不是一百万行进行排序。
标签: python performance pandas