5.71. mvnullto ベクトル要素のNULL置換¶
ベクトル要素でNULLの要素を任意の値に置換する。
ベクトル要素がNULLであれば、要素の区切り文字が連続する。
以下に示したベクトルは全てNULLを含む。
ただし、わかりやすさのためにベクトルの末尾に \n
を記している。
上から順番に、3番目、1番目、4番目の要素がNULLである。
1ab c\n
2 ab\n
3abc \n
パラメータ¶
i= : 型=str , 任意(default=標準入力)
入力データを指定する。
o= : 型=str , 任意(default=標準出力)
出力データを指定する。
vf= : 型=str , 必須
NULL置換の対象となる項目名(i=
データ上)を指定する。複数項目指定可能。結果の項目名を変更したいときは、:(コロン)に続けて新項目名を指定する。
A= : 型=bool , 任意(default=False)
vf=
で:(コロン)に続けて指定した項目名で、新たな項目が追加される。なおA
オプションを指定した場合、vf=
パラメータで指定するすべての項目に新項目名を指定しなければならない。
v= : 型=str , 任意(default=)
置換文字列を指定する。
p= : 型=bool , 任意(default=False)
直前の要素で置換する。v=と同時に指定はできない。
O= : 型=str , 任意(default=)
NULL値以外の要素を全て、ここで指定した文字列に置換する。指定しなければNULL値以外は置換しない。
delim= : 型=str , 任意(default=)
ベクトル型データの区切り文字を指定する。
共通パラメータ¶
i= , o= , delim= , assert_diffSize= , assert_nullin= , assert_nullout= , nfn= , nfno= , x= , tmppath= , precision=
利用例¶
importと入力データ(CSV)の準備
1import nysol.mcmd as nm 2 3with open('dat1.csv','w') as f: 4 f.write( 5'''items 6b a c 7c c 8e a b 9''') 10 11with open('dat2.csv','w') as f: 12 f.write( 13'''items 14b.a..c 15.c.c 16e.a...b. 17''')
nullを文字列nullに置換する例
1nm.mvnullto(vf="items", v="null", i="dat1.csv", o="rsl1.csv").run() 2### rsl1.csv の内容 3# items 4# b a null c 5# c c 6# e a null null b
分かりやすく区切り文字を.(ドット)にした例
1nm.mvnullto(vf="items", v="null", delim=".", i="dat2.csv", o="rsl2.csv").run() 2### rsl2.csv の内容 3# items 4# b.a.null.c 5# null.c.c 6# e.a.null.null.b.null
nullを直前の値に置換する例
1nm.mvnullto(vf="items", p=True, i="dat1.csv", o="rsl3.csv").run() 2### rsl3.csv の内容 3# items 4# b a a c 5# c c 6# e a a a b
O=を指定することで、null以外は全て指定の値に置換される
1nm.mvnullto(vf="items", v="null", O="X", i="dat1.csv", o="rsl4.csv").run() 2### rsl4.csv の内容 3# items 4# X X null X 5# X X 6# X X null null X
関連メソッド¶
mvdelnull ベクトルのNULL要素の削除 : NULL要素を削除する。