Linux shell 编程之 sort uniq 命令统计单词词频

命令

  • 统计词频需要uniq和sort配合使用
  • uniq
    • 实现去重操作,但仅仅和临近行的元素比较,那么如果元素是打散的不在连续行呢?这就需要sort操作
    • uniq -c -c表示将对应频次显示出来
  • sort
    • 可实现排序,这里就能让元素按照顺序排列,让相同元素临近
    • sort -nr -n表示数值排序,-r表示逆序
  • 然后在此基础上,进行uniq操作,即可得到每个元素对应频次
  • 一般为了美观,可以再加一个sort操作,让频次按照顺序排列

实践

tmp.txt 文本如下,将统计每个字段的频次

0-297:294
0-399:222
0-297:294
0-140:138
0-367:267
0-399:222
0-65:179
0-81:82
0-100:179
0-586:277
0-367:267
0-423:582
0-367:267
0-81:82
0-410:72
0-100:179
0-240:277
0-583:582
0-586:277
0-81:82
0-423:582
0-586:277
0-367:267
0-410:72
0-100:179
0-367:267
0-410:72
0-100:179
0-240:277
0-586:277
0-81:82
0-410:72
0-100:179
0-240:277
0-81:82
0-100:179
0-586:277
0-140:138
0-81:82
0-100:179
0-586:277
0-81:82
0-586:277
0-410:72
0-140:138
  • 代码
cat tmp.txt | sort  | uniq -c | sort -nr
  • 结果
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值