我有一个 SNP 表,如下所示
A N N N N N N N N N N N
N C N N N C N N N N N N
N N N N N N N N N N N N
N C N N N C N N N N N N
N N N N N N N N N N N N
C C N N N N N N N N N N
C C N N N C C N N N N N
N N N N N N N N N N N N
我想统计每行的N总数?知道怎么做吗
答案1
和awk
。
awk -F\N '{print NF-1}' infile
或者。
awk -F\N '$0=NF-1' infile
或者。
awk '{print gsub(/\<N\>/, "")}' infile
或者确定在哪一行:
awk -F\N '$0="line "NR": "NF-1' infile
答案2
如果您只想计算N
每行中特定字符的出现次数,那么
perl -lne 'print tr/N//' infile
如果您想更严格,并计算完全由 string 组成的空白分隔列的数量N
,那么
perl -alne 'print scalar grep { $_ eq "N" } @F' infile