配列列を切り取り、他の列をcsvファイルに結合する

配列列を切り取り、他の列をcsvファイルに結合する

CSVファイルがあります

input.csv

1,2,3,"{1,2,3}",9,12
1,2,3,"{1,2,3}",9,12
1,2,3,"{1,2,3}",9,12

上記のCSVファイルから配列列を削除して出力を取得する必要があります。

output.csv

1,2,3,9,12
1,2,3,9,12
1,2,3,9,12

だから私は努力しました

cut -d , -f4 -- complement input.csv > output.csv

しかし、上記のコマンドはエラーを提供します

区切り文字は単一文字でなければなりません。

また、output.csvを他のCSVファイルと結合したいと思います。

column.csv
30
36
90

それから結果はこれです

result.csv
1,2,3,9,12,30
1,2,3,9,12,36
1,2,3,9,12,90

誰でも私を助けることができますか?

ベストアンサー1


ミラー(http://johnkerl.org/miller/doc)から始める

1,2,3,"{1,2,3}",9,12
1,2,3,"{1,2,3}",9,12
1,2,3,"{1,2,3}",9,12

とても簡単です。実行できます。

mlr --csv --implicit-csv-header --headerless-csv-output cut -x -f 4 input.csv | paste -d , - column.csv

得る

1,2,3,9,12,30
1,2,3,9,12,36
1,2,3,9,12,90

cut -x -f 44番目の列を削除し、column.csvpaste列を追加しました。

おすすめ記事