5.20. mfsort 項目ソート

各行で f= で指定した複数項目の値を並べ替え(デフォルトでは文字列昇順)、その順序で出力する。 項目名の並びは変化しないことに注意する。

パラメータ

i= : 型=str , 任意(default=標準入力)

入力データを指定する。

o= : 型=str , 任意(default=標準出力)

出力データを指定する。

f= : 型=str , 必須

ソート対象となる項目を複数指定する。単一の項目を指定してもよいが、結果は変わらない。

n= : 型=bool , 任意(default=False)

数値順に並べる。

r= : 型=bool , 任意(default=False)

逆順に並べる。

共通パラメータ

i= , o= , assert_diffSize= , assert_nullin= , nfn= , nfno= , x= , tmppath= , precision=

利用例

importと入力データ(CSV)の準備

1import nysol.mcmd as nm
2
3with open('dat1.csv','w') as f:
4  f.write(
5'''id,v1,v2,v3
61,b,a,c
72,a,b,a
83,b,,e
9''')

例1: 基本例

各行において v1,v2,v3 の値を昇順にならべ、その順番で v1,v2,v3 項目として出力する。

1nm.mfsort(f="v*", i="dat1.csv", o="rsl1.csv").run()
2### rsl1.csv の内容
3# id,v1,v2,v3
4# 1,a,b,c
5# 2,a,a,b
6# 3,,b,e

例2: 降順

降順にしたければ r=True を付ける。

1nm.mfsort(f="v*", r=True, i="dat1.csv", o="rsl2.csv").run()
2### rsl2.csv の内容
3# id,v1,v2,v3
4# 1,c,b,a
5# 2,b,a,a
6# 3,e,b,

関連メソッド