【发布时间】:2018-07-22 04:31:50
【问题描述】:
我的表格中有大约 1 亿行。该表有几列,但最重要的列是 3。假设列 colA、colB 和 colC。
我想对按colA 和colB 分组的colC 值进行排序。
所以,例如:
colA colB colC
A B 1
C A 3
C B 1
B C 5
A B 2
C B 8
我希望结果是:
colA colB colC
A B 1
A B 2
B C 5
C A 3
C B 1
C B 8
假设有大约 10,000 个 colA 值和 2000 个 colB 值,总行数可以达到 100,000,000 行。
如何有效地使用 R 或 python 对其进行排序?
附加信息:
我的电脑有 10 个内核和 62 GB 可用 RAM。
【问题讨论】:
-
有多少列(你关心它们)?
-
有 10 列,但只有 3 列重要。
-
如果您的数据可以放入 RAM,请使用 data.table 包的 fread 功能。然后使用data.table中的排序。我稍后会发布完整的代码。
-
那么缺失的列值用null表示?
-
你试过 pandas for python 吗?