SSブログ

IBM SPSS Modeler(Clementine):for ... endfor 使い方 3 [データサイエンス、統計モデル]

~使い方 3~
for パラメータ in_fields_to ノードの名前
 ここに式を書く
endfor


フィールドの変数を変更したり、削除するためには、CLEM式にある関数をそのまま使えます。

書き方としては、var_nameという変数を用意してあげて、いったんここに処理後の値を入れ、それを代入するというやり方が良いかと思います。

----- フィールドの変数名を大文字に変更する -----
for f in_fields_to Filter_c
set var_name1 = lowertoupper(^f)
set Filter_c.new_name.^f = ^var_name1
endfor
------------------------------------------------

----- フィールドの変数名を小文字に変更する -----
for f in_fields_to Filter_c
set var_name2 = uppertolower(^f)
set Filter_c.new_name.^f = ^var_name2
endfor
------------------------------------------------

----- フィールドの変数名を○個削除する -----
for f in_fields_to Filter_c
set var_name3 = allbutlast(2, ^f)
set Filter_c.new_name.^f = ^var_name3
endfor
------------------------------------------------
この例では2個削除しています。

では、一番最初に戻り、やりたかったことを。



# フィルターノードの中身を変更する
for f in_fields_to Filter_d
set var_name4 = allbutlast(13, ^f)
set Filter_d.new_name.^f = ^var_name4
endfor


このスクリプトを実行すれば、

となります。

これで、長々と増えてしまった変数名もすっきりしますね。

nice!(23)  コメント(0)  トラックバック(0) 
共通テーマ:学問