5.2. marff2csv arff形式からcsv形式への変換¶
arff形式(WEKA用のデータフォーマット: http://weka.wikispaces.com/ARFF )のデータからcsv形式のデータへ変換する。 リスト 5.1 にarff形式データのフォーマットを記載する。
1 @RELATION タイトル
2 @ATTRIBUTE 項目名 string(文字列)
3 @ATTRIBUTE 項目名 date(日時 フォーマット:フォーマットは省略可能。省略した場合は、"yyyy-MM-dd'T'HH:mm:ss")
4 @ATTRIBUTE 数量 numeric(数字)
5 @ATTRIBUTE 商品 {A,B}(カテゴリ型項目)
6 @DATA(実データ)
7 No.1,20081201,1,10,A
8 No.2,20081202,2,20,A
9 No.3,20081203,3,30,A
10 No.4,20081201,4,40,B
11 No.5,20081203,5,50,B
共通パラメータ¶
i= , o= , assert_nullout= , nfn= , nfno= , x= , q= , tmppath= , precision=
利用例¶
importと入力データ(CSV)の準備
1import nysol.mcmd as nm 2 3with open('dat1.arff','w') as f: 4 f.write( 5'''@RELATION customerPurchaseData 6@ATTRIBUTE customer string 7@ATTRIBUTE date date yyyyMMdd 8@ATTRIBUTE quantity numeric 9@ATTRIBUTE amount numeric 10@ATTRIBUTE item {A,B} 11@DATA 12No.1,20081201,1,10,A 13No.2,20081202,2,20,A 14No.3,20081203,3,30,A 15No.4,20081201,4,40,B 16No.5,20081203,5,50,B 17''')
基本例
arff形式の顧客購買データをcsv形式のデータへ変換する。
1nm.marff2csv(i="dat1.arff", o="rsl1.csv").run() 2### rsl1.csv の内容 3# customer,date,quantity,amount,item 4# No.1,20081201,1,10,A 5# No.2,20081202,2,20,A 6# No.3,20081203,3,30,A 7# No.4,20081201,4,40,B 8# No.5,20081203,5,50,B