我试图计算文本文件的第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正确计算数字的唯一出现次数?
uniq -c
计算连续重复.要计算它们,您需要先对它进行排序.但是,awk
你不需要.
$ awk '{count[$3]++} END{for(c in count) print count[c], c}' file
会做