列4に特定の文字列が何回表示されるかを計算する必要があります。
私のデータは次のとおりです。
25 48656721 48656734 FAM132B ENSCAFT00000019683 4 0.51
X 53969937 53969950 FAM155B ENSCAFT00000026508 5 0.57
3 42203721 42203906 FAM169B ENSCAFT00000017307 5 0.54
36 28947780 28947831 FAM171B ENSCAFT00000046981 5 0.51
10 45080519 45080773 FAM171B ENSCAFT00000003744 9 -0.53
3 61627122 61627446 FAM193A ENSCAFT00000023571 13 0.64
3 61626373 61626466 FAM193A ENSCAFT00000023571 6 0.51
15 55348822 55349196 FAM193A ENSCAFT00000045012 5 0.52
これは私のデータの一部です。したがって、出力は次のようになります。
1 FAM132B
1 FAM155B
1 FAM169B
2 FAM171B
3 FAM193A
残りのデータについても同様です。有効なコマンドは何ですか?
ベストアンサー1
awk
簡単な解決策は、列4でプールを使用し、列2(以前の列4データ)に基づいてソートすることですuniq -c
。sort
awk '{print $4}' < data | uniq -c | sort -k2
(更新された)入力例では、次のようになります。
1 FAM132B
1 FAM155B
1 FAM169B
2 FAM171B
3 FAM193A