次の形式の出力があります。
count id type
588 10 | 3
10 12 | 3
883 14 | 3
98 17 | 3
17 18 | 1
77598 18 | 3
10000 21 | 3
17892 2 | 3
20000 23 | 3
63 27 | 3
6 3 | 3
2446 35 | 3
14 4 | 3
15 4 | 1
253 4 | 2
19857 4 | 3
1000 5 | 3
...
これは非常に面倒で、CSVにクリーンアップする必要があるため、プロジェクトマネージャーにスプレッドシートを渡すことができます。
問題の核心はこれです:この出力が必要です:
id、sum_of_type_1、sum_of_type_2、sum_of_type_3
この例はid "4"です:
14 4 | 3
15 4 | 1
253 4 | 2
19857 4 | 3
代わりに次のようにする必要があります。
4,15,253,19871
残念ながら、私はこの種のことでかなりゴミです、私はすべての行をクリーンアップしてCSVに入れることができましたが、行を重複排除してグループ化することはできませんでした。今私はこれを持っています:
awk 'BEGIN{OFS=",";} {split($line, part, " "); print part[1],part[2],part[4]}' | awk '{ gsub (" ", "", $0); print}'
しかし、それはゴミ文字をクリーンアップし、行を再度印刷するだけです。
上記の出力に行をマッサージする最良の方法は何ですか?