0
0

データの標準化と正規化

Posted at

まえがき

データ分析の前処理は、データの質を高め、正確な分析結果を得るために不可欠です。この記事では、データの標準化と正規化について学び、これらの手法がどのようにデータ分析に役立つかを具体的な例と共に説明します。

標準化

定義
標準化は、データの平均を0、標準偏差を1に変換する手法です。これにより、異なるスケールのデータを同じ基準で比較できます。

具体例
例えば、テストの点数が次のようなデータがあったとします。

学生 点数
A 80
B 90
C 70
D 85
E 75

このデータを標準化すると、各点数が平均からどれだけ離れているかが分かりやすくなります。

コード例

import pandas as pd
from sklearn.preprocessing import StandardScaler

# データフレームの作成
data = pd.DataFrame({
    'Score': [80, 90, 70, 85, 75]
})

# 標準化
scaler = StandardScaler()
data_standardized = scaler.fit_transform(data)

print("Standardized DataFrame:")
print(data_standardized)

アウトプット

Standardized DataFrame:
[[-0.39223227]
 [ 1.37281295]
 [-1.15669818]
 [ 0.49029034]
 [-0.31417284]]

この結果から、例えばBの点数は平均より約1.37標準偏差高いことがわかります。

正規化

定義
正規化は、データを特定の範囲(通常は0から1)にスケール変換する手法です。これにより、異なるスケールのデータを同じ範囲に収めることができます。

具体例
例えば、製品の価格が次のようなデータがあったとします。

製品 価格
A 100
B 300
C 200
D 400
E 250

このデータを正規化すると、各価格が0から1の範囲にスケールされます。

コード例

from sklearn.preprocessing import MinMaxScaler

# データフレームの作成
data = pd.DataFrame({
    'Price': [100, 300, 200, 400, 250]
})

# 正規化
scaler = MinMaxScaler()
data_normalized = scaler.fit_transform(data)

print("Normalized DataFrame:")
print(data_normalized)

アウトプット

Normalized DataFrame:
[[0.  ]
 [0.5 ]
 [0.25]
 [1.  ]
 [0.375]]

この結果から、例えば製品Bの価格は範囲内の0.5の位置にあることがわかります。

あとがき

標準化と正規化は、異なるスケールのデータを同じ基準で評価・比較するために不可欠な手法です。これらの前処理を適用することで、データの品質を向上させ、分析結果の信頼性を高めることができます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0