2つの異なるセパレータ間でセパレータを交換するには?

2つの異なるセパレータ間でセパレータを交換するには?

以下のような文字列があります。

engineer,doctor,"987,345,123",engineer

Unixでは、次のように変更したいと思います。

engineer,doctor,"987345123",engineer

答え1

gsub()以下を使用して、入力から各CSVレコードの3番目のフィールドにあるすべてのコンマを削除します。ミラー。入力データセットにヘッダーがないとします。

$ mlr --csv -N put '$3 = gsub($3, ",", "")' file
engineer,doctor,987345123,engineer

不要になった場合でも、元の引用を保存してください。

$ mlr --csv -N --quote-original put '$3 = gsub($3, ",", "")' file
engineer,doctor,"987345123",engineer

関連情報