如何对非常大的CSV文件进行排序?

时间:2017-01-02 08:29:14

标签: csv

我有一个大的294,000行csv,第1列的网址和第2列的数字。

我需要将它们从最小的数字排序到最大的数字。我已将它加载到软件'CSVed'并且它处理它没关系,它没有崩溃或任何东西,但当我点击列的顶部进行排序时,它不会按顺序从最小到最大,它是一切都搞砸了。

有人有什么想法吗?我一整天都在寻找,我想我可能会问这里。

感谢。

2 个答案:

答案 0 :(得分:2)

如果您可以访问unix系统(并且您的网址中没有逗号),这应该可以解决问题:

sort -t',' -n -k2 filename

-t表示列以逗号分隔,-n表示数据为数字,-k2表示根据第二列进行排序。

答案 1 :(得分:1)

您可以使用gnu sort。它占用的内存很小,甚至可以使用多个CPU进行排序。

sort -t ,  -k 2n file.csv

默认情况下,Gnu sort在大多数Linux发行版中都可用,默认情况下也适用于MacOS(虽然稍后会有稍微不同的选项)。您也可以为Windows安装它,例如从CoreUtils for Windows页面安装。

有关排序调用的更多信息,请使用manual

相关问题