SSブログ

【IBM SPSS Modeler】スクリプトとオートメーション [データサイエンス、統計モデル]

IBM SPSS Modeler(旧 Clementine)で日別のファイルデータを集計することになった。



やりたいことを簡単に書くと、
① 日付が付いているファイルを読み込む。
② そのファイルの日付をフィールドに持たせる。
③ 処理をする。【スーパーノード】
④ その日付を付けてファイルを出力する。
⑤ 1か月分のファイルを繰り返す。

for I from 1 to 9
  set :variablefilenode.full_filename = 'D:\hoge\input_2010060' >< I >< '.txt'
  set :derivenode.formula_expr = '"2010-06-0' >< I >< '"'
  set :outputfile.full_filename = 'D:\hoge\output_2010060' >< I >< '.txt'
execute 'output'
endfor
 
for I from 10 to 30
  set :variablefilenode.full_filename = 'D:\hoge\input_201006' >< I >< '.txt'
  set :derivenode.formula_expr = '"2010-06-' >< I >< '"'
  set :outputfile.full_filename = 'D:\hoge\output_201006' >< I >< '.txt'
execute 'output'
endfor


【スクリプトの説明】
① 日付が付いているファイルを読み込む。
 set :variablefilenode.full_filename に読み込むファイル名を記載。

② そのファイルの日付をフィールドに持たせる。
 フィールド作成ノードですが、これは、derivenodeになります。

④ その日付を付けてファイルを出力する。
 set :outputfile.full_filename に出力先を記載。
 今回は、別々のファイルに出力していますが、レコード追加をすれば、同じファイルに1か月分のデータを出力することもできます。

⑤ 1か月分のファイルを繰り返す。
 1日~9日と、10日~30日は、ファイル名の関係で分けておく必要があります。
 forループを2つ作っています。
 これを応用すれば、月またぎの集計にも対応できます。

※ "ScriptingAutomation.pdf"を読めば、このあたりのスクリプトの詳細が書かれています。


SPSSクレメンタインによるデータマイニング

SPSSクレメンタインによるデータマイニング

  • 作者: 牛田 一雄
  • 出版社/メーカー: 東京図書
  • 発売日: 2003/10
  • メディア: 単行本



nice!(6) 
共通テーマ:学問

nice! 6