±3標準偏差を外れ値と定義して欠損値に置換する
*逆引き3-6では外れ値として削除/抽出しましたが、欠損値NULLに置き換えます。
1.想定される利用目的
・予測モデル精度向上のための前処理(異常値への対処)
2.サンプルストリームのダウンロード
3.サンプルストリームの説明
a.入力するデータは以下の通りです。平均50、標準偏差10、サンプル数10,000レコードで正規分布するようにデータを発生させています。
[データ検査]ノードを利用する方法
b.[データ検査]ノードを編集します。[外れ値]が3標準偏差、極値は5標準偏差で初期設定されています。
[データ検査]ノードを編集します。[欠損値検査]タブで外れ値が28レコード確認できました。[アクション]を[無効]にします。
[生成]メニューから[外れ値および欠損値スーパーノード]を選択します。
c.[スーパーノード]を編集します。生成した10,000レコードから正確に±3σ(シグマ)を求め、外れ値を破棄するように式が埋め込まれています。
[プレビュー]をします。10,000レコードから外れ値を破棄した9,972レコードが表示されます。
d.[ソート]ノードを編集します。
[テーブル]を実行します。3標準偏差に該当していた28レコードがNULLに置き換わりました。
[レコード集計]ノードと[レコード結合]ノードを利用する方法
f.[レコード結合]ノードを編集します。キーをブランクにして元データにeの統計量を付与します。
g.[置換]ノードを編集します。3標準偏差の外側のレコードを欠損値に置換します。
h.[ソート]ノードを編集します。
注意点
置換する値は用途によって選択します。例えば時系列予測を行う際には予測した機械学習した結果が理論上あり得ないマイナスになる場合はゼロに置換。何らかのマイナス計上を予測材料にする場合には欠損値にして学習に考慮しないなどが妥当です。
4.参考情報
±3標準偏差を外れ値と定義して削除/抽出する
SPSS Modeler ノードリファレンス目次
SPSS Modeler 逆引きストリーム集(データ加工)