SPSS Modeler 逆引きストリーム集
SPSS Modelerのデータ加工手順を大項目から逆引きで探して頂けます。手順を解説する各記事からサンプルストリームがダウンロードが可能です。データを内部生成しますのでストリームのみで完結します。2022年7月から毎週記事を追加する予定です。
2023/2/1 最終更新 DL可能ストリーム数 140
目次から大項目へリンク(右のサイドバーから個々の記事を閲覧できます)
項番 |
大項目へのリンク |
処理の例 |
記事数 |
1 |
日付の処理 |
日付列から年月の列を作成する/曜日を識別する |
12 |
2 |
文字列の加工 |
文字列から特定記号を除去する/N文字目を抽出する |
12 |
3 |
統計量を作成 |
平均との差(偏差)や累積比率を作成する |
21 |
4 |
時系列の処理 |
1行上の値との差を求める/N期移動平均を作成する |
19 |
5 |
欠損値を補完 |
NULLや空白には平均値や代表値を代入する |
12 |
6 |
テーブルの結合 |
テーブルを内部結合する/列方向に追加する |
8 |
7 |
行と列の操作 |
時系列に記録された明細を顧客ごとに横持ちする |
15 |
8 |
予測精度の確認 |
予測モデルの精度を業務の観点で評価する |
14 |
9 |
データ加工の効率化 |
加工プロセスの反復やチーム共有を効率化する |
8 |
10 |
グラフの表示 |
データの分布の確認する/グループ間の比較を行う |
11 |
11 |
集計表の作成 |
集計表を作成する/固定帳票の自動化を行う |
8 |
1.日付の処理
1-1 日付の列から年/月/日の列を作成する(年月日を分解する)

1-2 日付の列から年月の列を作成する(年と月の文字列結合)

1-3 日付の列から曜日の列を作成する

1-4 2つの日付の列から差の列を作成する

1-5 日付の列からN日後の列を作成する

1-6 文字列/整数を日付型に変更し本日までの日数を作成する

1-7 特定の日付や期間のレコードを抽出する

1-8 52週の予測値を曜日重みで日毎に割り戻す

1-9 タイムスタンプ列の差を計算する

1-10 生年月日の列から年齢と年代の列を作成する

1-11 日付の列から決算日に応じた四半期の列を作成する

1-12 祝日マスタを日付で割り当て休日フラグを作成する

2.文字列の加工
2-1 文字列から特定文字を除去する

2-2 空白を除去して文字列を結合する

2-3 文字列から先頭/末尾のN文字を抽出/削除する

2-4 文字列からN文字目を抽出する

2-5 記号間の文字列を抽出する

2-6 コメント欄にリストのキーワードがあればフラグ化する

2-7 整数型のIDの末尾が1のレコードを抽出/フラグ化する

2-8 文字列「SPSS」を含むレコードを抽出/フラグ化する

2-9 半角カタカナを全角カタカナへ置換する

2-10 文字列を別の文字列に置換する

2-11 括弧内の文字列を抽出/削除する

2-12 カテゴリの値を別の値に割り当てる

3.統計量を作成
3-1 2つの列の合計と比率を作成する

3-2 複数の列の合計と比率を作成する

3-3 各行の平均との差を求める

3-4 累積合計と累積比率を求める

3-5 値が100を超えたらフラグ立てる/抽出する

3-6 ±3標準偏差を外れ値と定義して削除/抽出する

3-7 上位/下位1%を外れ値と定義して削除/抽出する

3-8 相関係数を求める

3-9 相関行列と散布図行列を作成する

3-10 値を対数変換する

3-11 値をZスコアに標準化する

3-12 値を25%(四分位)のランク毎に集計する

3-13 値を10%(デシル)のランク毎に集計する

3-14 値を1%(パーセンタイル)に分けてパレート図を作る

3-15 値を任意の閾値でランクに分割する

3-16 IQR(四分位範囲)の1.5倍を外れ値として削除/抽出する

3-17 2地点の座標(緯度・経度)から距離を求める

3-18 16進数を10進数に変換する

3-19 複数列の最大値/最小値を求める

3-20 乱数を生成する

3-21 複数列の条件で値を割り当てる

4.時系列の処理
4-1 全レコード/設備毎に通し番号を振る

4-2 1行上/先頭行との値の差を求める

4-3 移動平均を作成する

4-4 過去の値を列に展開する

4-5 顧客の最終利用日と経過日数を求める(リーセンシー)

4-6 ID毎に値を累積してフラグをカウントアップする

4-7 ID毎に前回のフラグからの経過時間を求める

4-8 フラグが立つとオンになりIDが変わるとオフにする

4-9 値が上昇から下降に転じたら反転フラグを作成する

4-10 N期連続で値が上昇/下降したら安定フラグを作成する

4-11 ID毎に同じ事象が起きてからの経過日数を求める

4-12 7日前の値/移動平均との増減率を求める

4-13 ID毎に初期値からの比率を求める

4-14 ID毎に最大値からの比率を求める

4-15 顧客の月毎と部門毎の実績を求める

4-16 顧客ランクアップ予測の説明/ 目的変数を作成する

4-17 未来の値を列に展開する

4-18 顧客行動を日毎に要約し基礎統計をとる

4-19 顧客の来店N日目を作成する

5.欠損値を補完
5-1 欠損値/空白に直近の値を置換する

5-2 欠損値を0に/0を欠損値に置換する

5-3 欠損値を平均値で置換する

5-4 欠損値を最小値/最大値で全行/カテゴリ毎に置換する

5-5 欠損値を最頻値で置換する

5-6 欠損値を中央値で置換する

5-7 空白/空文字レコードを確認して削除/抽出する

5-8 欠損値レコードを確認して削除/抽出する

5-9 時系列の欠損値を線形補間する

5-10 実績がなく欠損した日付レコードを補間する

5-11 レコードに存在する欠損値/有効の数をカウントする

5-12 欠損値フラグを作成する

6.テーブルの結合
6-1 IDでテーブルを結合する 内部結合と完全外部結合

6-2 IDでテーブルを結合する 部分外部結合と逆結合

6-3 N対N結合で組み合わせテーブルを作成する

6-4 複数のテーブルを縦方向に追加する

6-5 複数条件でリストを名寄せする

6-6 都道府県名称をマスタのコード番号で割り当てる

6-7 法人等略語マスタで組織名を名寄せする

6-8 取引先マスタで組織名を名寄せする

7.行と列の操作
7-1 フラグ変数/ダミー変数作成 縦持ちを横持ちへ

7-2 カテゴリ値を列に展開してIDで集約 縦持ちを横持ちへ

7-3 行と列を入れ替える

7-4 固定帳票のための行合計と列合計を作成する

7-5 横持ちを縦持ち/トランザクション形式へ復元する

7-6 重複する不要なレコード(行)を削除する

7-7 列名を変更する/不要な列を削除する

7-8 レコード数/ユニークなID数をカウントする

7-9 ID毎に各列に含まれる種類数をカウントする

7-10 レコードを無作為に/層別にサンプリングする

7-11 交差検証のためにデータを学習とテストに分割する

7-12 オーバーサンプリングで不均衡データを調整する

7-13 主成分分析で次元数/列を縮約する

7-14 フィールド(列)の順番を入れ替える

7-15 複数条件でレコード(行)を絞り込む

8.予測精度の確認
8-1 Accuracy(精度)を求める

8-2 Precison(適合率)とRecall(再現率)を求める

8-3 F1スコアをを求める

8-4 MCC(マシューズ相関係数)を求める

8-5 ROC曲線の全ての座標を求めて散布図で描画する

8-6 ROC曲線からAUCとGini(AR値)を求める

8-7 ROC曲線からカットオフ値を求める

8-8 ゲインチャートの座標からGini(AR値)を求める

8-9 ゲインチャートから利益が最大化するスコアを求める

8-10 PR曲線の全ての座標を求めて散布図で描画する

8-11 MAPE(平均絶対パーセント誤差)を求める

8-12 RMSE(二乗平均平方根誤差)を求める

8-13 95%予測区間を求める

8-14 予測フラグと確信度から傾向スコアを求める

9.データ加工の効率化
9-1 複数のノードをスーパーノードでまとめる

9-2 スーパーノードをパラメータで制御する

9-3 ストリームをパラメータで制御する

9-4 ストリームにメモ(付箋)を付けてチームで共有する

9-5 キャッシュで2度目以降の処理速度を上げる

9-6 DBにSQLを自動発行させ処理速度を上げる

9-7 DBキャッシュで処理速度を上げる

9-8 DB入力ノードにクエリを書き込んで高速に読み込む

10.グラフの表示
10-1 エラーバーを表示する

10-2 円グラフを表示する

10-3 ツリーマップを表示する

10-4 複数系列グラフを表示する

10-5 時系列を分解する

10-6 ヒストグラムを表示する

10-7 散布図/散布図行列を表示する

10-8 棒グラフを表示する

10-9 関係グラフを表示する

10-10 箱ひげ図を表示する

10-11 二重Y軸グラフを表示する

11.集計表の作成
11-1 度数分布表を作成する

11-2 カテゴリ毎の集計表を作成する

11-3 カテゴリと時系列の集計表を作成する

11-4 クロス集計表を作成する1*1_度数

11-5 クロス集計表を作成する1*1_統計量

11-6 クロス集計表を作成する2*1_度数

11-7 クロス集計表を作成する2*1_統計量

11-8 クロス集計表を作成する1*2_度数

関連記事
Modeler書籍紹介とユーザー筆者座談会ブログ