ID毎に最大値からの比率を求める
*①は各時系列の時点でのIDの最大値、②は事後の集計後のIDの最大値と比較します。
1.想定される利用目的
・顧客の特定行動から特徴量を作成する
・設備ログから特定イベントの経過日数を特徴量にする
2.サンプルストリームのダウンロード
3.サンプルストリームの説明
a.入力するデータは以下の通りです。7レコード目からIDが入れ替わります。

b.[フィールド作成]ノードを編集します。関数[@OFFSET(ID,1)]はIDの1行上を参照する関数です。IDが1行上と異なったら1つカウントアップすることになります。

c.[フィールド作成]ノードを編集します。ID毎に各時点での最大値を関数[@MAX(値,レコード数)]で求めます。レコード数は現在のレコードから何行上まで参照するかを指定するためindexをそのまま使います。

d.[レコード集計]ノードを編集します。[キーフィールド]には[ID]を選択して最大値を求めます。

[プレビュー]します。それぞれのIDの最大値が得られました。

e.[レコード結合]ノードを編集します。[レコード結合方式]を[キー]にして[ID]を[結合キー]で内部結合します。

g.[フィールド作成]ノードを編集します。最大値を分母に各レコードの値を割り算します。

注意点
予測や異常検知の仕組みがリアルタイムに処理できる場合には①を、バッチ処理による実装の場合②を検討します。
4.参考情報
ID毎にカウントアップするインデックスの作成
SPSS Modeler ノードリファレンス目次
SPSS Modeler 逆引きストリーム集(データ加工)







