5.69. mvdelnull ベクトルの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= パラメータで指定するすべての
項目に新項目名を指定しなければならない。

delim= : 型=str , 任意(default=)

ベクトル型データの区切り文字を指定する。

利用例

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を削除する基本例

1nm.mvdelnull(vf="items", i="dat1.csv", o="rsl1.csv").run()
2### rsl1.csv の内容
3# items
4# b a c
5# c c
6# e a b

分かりやすく区切り文字を.(ドット)にした例

1nm.mvdelnull(vf="items", delim=".", i="dat2.csv", o="rsl2.csv").run()
2### rsl2.csv の内容
3# items
4# b.a.c
5# c.c
6# e.a.b

項目名を変更して出力

1nm.mvdelnull(vf="items:new", i="dat1.csv", o="rsl3.csv").run()
2### rsl3.csv の内容
3# new
4# b a c
5# c c
6# e a b

-Aを指定することで追加項目として出力

1nm.mvdelnull(vf="items:new", A=True, i="dat1.csv", o="rsl4.csv").run()
2### rsl4.csv の内容
3# items,new
4# b a  c,b a c
5# c c,c c
6# e a   b,e a b

関連メソッド