#58

正規化(min-max)と標準化(zスコア)

スケールの違うデータをそろえる2つの前処理を比較します。

解説

身長と体重のように単位が違うデータを比べるには、スケールをそろえる前処理が必要です。データサイエンスでよく使う2つの方法を学びます。 - min-max正規化:(x − 最小) ÷ (最大 − 最小)。すべて0〜1の範囲に収まる。 - z標準化(zスコア):(x − 平均) ÷ 標準偏差。平均0・標準偏差1にそろう。 同じデータに両方を適用し、値がどう変換されるか見比べてみましょう。

書き方

import statistics — 統計モジュールを読み込む。
・min(データ) / max(データ) — 最小値・最大値。statistics.mean / pstdev — 平均・母標準偏差。
・min-max正規化: (x - 最小) / (最大 - 最小) で 0〜1 に変換。
・z標準化: (x - 平均) / 標準偏差 で平均0・標準偏差1に変換。
・f"{mm:.3f}" / f"{z:+.3f}" — 小数桁を指定、+ は符号を常に表示。

書いて動かす

この回の課題

同じデータに min-max正規化と z標準化の両方を適用し、各値がどう変換されるか並べて見比べよう。

コードはあなたの端末の中だけで動きます(サーバーには送られません)。進み具合もこのブラウザに保存されます。

もっと本格的に使うなら

Windows版 InsightPy なら、書いたコードを保存して業務の自動化まで進められます。学習センターはずっと無料です。