bash - 从文件生成频率表

标签 bash file shell awk

给定一个每行包含一个数字的输入文件,我如何计算一个项目在该文件中出现的次数?

cat input.txt
1
2
1
3
1
0

期望的输出(=>[1,3,1,1]):

cat output.txt
0 1
1 3
2 1
3 1

如果解决方案也可以针对 float 进行扩展,那就太好了。

最佳答案

你的意思是你想要计算一个项目在输入文件中出现了多少次?首先对其进行排序(使用 -n 如果输入始终是数字,如您的示例所示),然后计算唯一结果。

sort -n input.txt | uniq -c

关于bash - 从文件生成频率表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6044539/

相关文章:

linux - awk 中的搜索模式

linux - ipcalc 输出和 grep。只想返回二进制输出

json - 无法在 JavaScript 中解析 JSON 文件

java - Java:从服务器到客户端的.mp3音频文件流传输提供了UnsupportedAudioFileException

从 shell 启动的仪器的 iPhone(硬件?)id

linux - gnu make - 确定 stdout 是否是终端

bash - 在 bash 脚本中使用 sed 从文件中删除一行

bash - 从文件名中删除日期但保留文件扩展名

linux - 'output to stdout'是什么意思

python - 如何使用 Python 3 将文本写入以二进制模式打开的文件中?