【问题标题】:Data summarizing based on values in column根据列中的值汇总数据
【发布时间】:2015-09-28 15:51:24
【问题描述】:

我要解析一个包含四列的文本文件,如下:

a  343  rty  awdr     
a  345  rty  awdr   
a  386  rty  bfggd   
b  390  rty  bfggd  
b  396  rty  45fggd   
b  400  rty  45fggd  
b  415  rty  45fggd             

目标是计算特定值在第 4 列中重复的次数,并在两列中写出这样的输出:

awdr     2   
bfggd    2   
45fggd   3   

【问题讨论】:

  • awk {打印 $4 } |排序 | uniq -c
  • 我在审核队列的Help and Improvement 部分编辑了这篇文章,但没有足够的信息,这个问题几乎无法挽救。你要把这个文件打印到哪里?文件还是控制台?这个文件是什么格式的? 最重要的是,您尝试过什么?

标签: linux text-files summary


【解决方案1】:

你可以用 awk 做到这一点:

$cat test.txt | awk '{tbl[$4]++;} END { for (s in tbl) printf("%s %d\n", s, tbl[s]);}'
awdr 2
bfggd 2
45fggd 3

【讨论】:

    猜你喜欢
    • 2016-11-12
    • 2023-02-23
    • 1970-01-01
    • 2021-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多