uniq -c 无法计算唯一行
uniq -c unable to count unique lines
我正在尝试计算文本文件第 3 列中数字的唯一出现次数,一个非常简单的命令:
awk 'BEGIN {FS = "\t"}; {print }' 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 }' bisulfite_seq_set0_v_set1.tsv | sed -e 's/ //g' -e 's/\t//g' | uniq -c
我已经尝试了 uniq 手册页中我能想到的所有组合。如何使用 uniq 正确计算数字的唯一出现次数?
uniq -c
计算连续的重复次数。要计算它们,您需要先对其进行排序。然而,使用 awk
你不需要。
$ awk '{count[]++} END{for(c in count) print count[c], c}' file
会做
awk
-带有cut
、sort
和uniq
的免费版本:
cut -f 3 bisulfite_seq_set0_v_set1.tsv | sort | uniq -c
uniq
对相邻的匹配行进行操作,所以输入要先排序。
我正在尝试计算文本文件第 3 列中数字的唯一出现次数,一个非常简单的命令:
awk 'BEGIN {FS = "\t"}; {print }' 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 }' bisulfite_seq_set0_v_set1.tsv | sed -e 's/ //g' -e 's/\t//g' | uniq -c
我已经尝试了 uniq 手册页中我能想到的所有组合。如何使用 uniq 正确计算数字的唯一出现次数?
uniq -c
计算连续的重复次数。要计算它们,您需要先对其进行排序。然而,使用 awk
你不需要。
$ awk '{count[]++} END{for(c in count) print count[c], c}' file
会做
awk
-带有cut
、sort
和uniq
的免费版本:
cut -f 3 bisulfite_seq_set0_v_set1.tsv | sort | uniq -c
uniq
对相邻的匹配行进行操作,所以输入要先排序。