生年月日の列から年齢と年代の列を作成(浮動小数点の誤差を考慮)
1.想定される利用目的
・予測モデル作成のための顧客属性の加工
・予測モデル作成のための設備/部品情報の加工
2.サンプルストリームのダウンロード
3.サンプルストリームの説明
b.[フィールド作成]ノードを編集します。正確に日付けの差を計算するには、まず1900年1月1日を基準日(設定変更可能)として、そこから起算日が何秒経過しているのか[datetime_in_seconds(フィールド)]で求めます。次に7日分の秒数を加えて、最後に[datetime_day(フィールド)]で日付に戻します。
年月の差の計算については以下の記事で解説しています。
式ビルダーの日付関数を利用すると便利です。
c.[フィールド作成]ノードを編集します。[派生]モードを[名義型]にしてそれぞれの年代の条件式を記述します。
棒グラフからバンド分割
ヒストグラムで分布を確認しならがらマウスで閾(しきい)値を決めて分割の自動生成をする方法は以下で紹介しています。数値を大きくバンドでグループ化してから値を整えるやり方がおすすめです。
注意事項
おおよその年の経過の場合にはdate_years_differenceを用います。この場合は以下のように浮動小数点の処理で誤差が生じます。
e.[フィールド作成]ノードを編集します。dの値を整数化しています。
[プレビュー]します。2行目と4行目は小数点が切り捨てられ、先の出力と異なり不正確な結果になります。
こちらの記事でも浮動小数点による誤差を扱っています。
4.参考情報
よく使う「日付と時間」関数
SPSS Modeler ノードリファレンス目次
SPSS Modeler 逆引きストリーム集(データ加工)