テーブル内の同様の行を並べ替え、数字を1列に入れることは可能ですか? [コピー]

テーブル内の同様の行を並べ替え、数字を1列に入れることは可能ですか? [コピー]

このテーブルがあります。

gene  5   5  5
gene  4   4  3
gene  5   5  5
gene  1   4  5

私は以下が欲しい。

gene  5   5  5   2
gene  4   4  3   1
gene  1   4  5   1

したがって、最後の列には同様の行がたくさんあります(この場合、gene 5 5 5元のテーブルには2回表示され、他の行は一度だけ表示されます)。

最良のアプローチは何ですか?これは仕事ですかawk?実際、これはLinuxで可能ですか?

答え1

$ sort data.txt|uniq -c|sed -e 's/[ ]*\([0-9]\)   \(.*\)$/\2 \1/'|sort -nrk 5
gene  5   5  5   2
gene  4   4  3   1
gene  1   4  5   1

関連情報