miller を使用して小文字を大文字に変換し、出力を新しい列に出力します。

miller を使用して小文字を大文字に変換し、出力を新しい列に出力します。

NAME列を列にコピーしたいですNAME-LOWERCASENAME-LOWERCASE小文字のみを含める必要があります。それ以外の場合は、すべての列の大文字を変更せずにそのまま残す必要があります。NAME-LOWERCASE

入力する

NAME,test
PTC,N
Agri,Y
E-example,N
ForYou,N
Willy Nes,Y

出力

NAME,NAME-LOWERCASE,test
PTC,ptc,N
Agri,agri,Y
E-example,E-example,N
ForYou,foryou,N
Willy Nes,willy nes,Y

別の列で新しい列を作成して並べ替える方法を知っています。

mlr -I --csv \
    put '$FIRSTNAME = sub($FULLNAME," .*","")' then \
    reorder -f FULLNAME,LASTNAME,EMAIL,DOMAIN,COMPANY input.csv

大文字を小文字に置き換える方法を知っています

mlr --csv -N case -l 

これら2つのコマンドを組み合わせる方法は?それとも私の目標を達成するための別のMillerコマンドがありますか?

ベストアンサー1

走れば

mlr --csv put '${NAME-LOWERCASE}=tolower($NAME)' then \
reorder -f NAME,NAME-LOWERCASE,test input.csv

小文字で表示されますNAME-LOWERCASE

NAME,NAME-LOWERCASE,test
PTC,ptc,N
Agri,agri,Y
E-example,e-example,N
ForYou,foryou,N
Willy Nes,willy nes,Y

それtolower機能

おすすめ記事