当前位置:  开发笔记 > 编程语言 > 正文

uniq -c无法计算唯一的行数

如何解决《uniq-c无法计算唯一的行数》经验,为你挑选了1个好方法。

我试图计算文本文件的第3列中唯一出现的数字,这是一个非常简单的命令:

awk 'BEGIN {FS = "\t"}; {print $3}' bisulfite_seq_set0_v_set1.tsv | uniq -c

应该说类似的东西

1 10103
2 2093
3 109

但是反而出现废话,其中相同的数字被多次计算,例如

 20 1
  1 2
  1 1
  1 2
 14 1
  1 2

我也试过了

 awk 'BEGIN {FS = "\t"}; {print $3}' bisulfite_seq_set0_v_set1.tsv | sed -e 's/ //g' -e 's/\t//g' | uniq -c

我尝试过uniq手册页中我能想到的所有组合.如何使用uniq正确计算数字的唯一出现次数?



1> karakfa..:

uniq -c计算连续重复.要计算它们,您需要先对它进行排序.但是,awk你不需要.

$ awk '{count[$3]++} END{for(c in count) print count[c], c}' file 

会做

推荐阅读
LEEstarmmmmm
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有