1

我有一个包含大约 2,000,000 个条目的文件 - 只有一列包含这么多条目,所有数字。我想快速找出文件中最常见的数字是什么。有没有办法使用 unix 来做到这一点?我知道如何使用 gnuplot 来做到这一点,但这是一种有点乏味的方式,并且想知道是否有一种更简单的方法,只需使用一些 unix 命令?就像我的文件是

1
1
1
2
3
4

然后我希望它读取文件并给我答案 1,因为那是最常见的。

4

3 回答 3

6

你可以这样做:

$ cat file|sort -n|uniq -c|sort -n|tail -n 1|awk '{print $2}'
于 2013-08-20T14:58:39.027 回答
3

sort test.txt | uniq -c | sort -rn | head -n 1应该有帮助。它打印出现次数和最常用的数字,因此对于您的示例文件,它将是:3 1

于 2013-08-20T15:07:23.710 回答
0

我的第一个答案是建立一个直方图。如果可能值的范围足够小,它会有所帮助。

建立直方图后,只需查找其中的最高数量。

于 2013-08-20T14:57:05.420 回答