정규화
정규화
직접 계산
최소 = df.price.min()
최대 = df.price.max()
df["norm_price"] = (df.price - 최소) / (최대 - 최소)
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
columns = ['price', 'mileage', 'my_car_damage', 'other_car_damage']
scaler.fit(df[columns])
norm_columns = ['norm_' + col for col in columns]
df[norm_columns] = scaler.transform(df[columns])
표준화
직접 계산
평균 = df['price'].mean()
표준편차 = df['price'].std()
df['Z_price'] = (df['price'] - 평균) / 표준편차
StandardScaler
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
scaler.fit(df[columns])
norm_columns = ['Z_' + col for col in columns]
df[norm_columns] = scaler.transform(df[columns])
표준점수
t 점수
10 * df['Z_price'] + 50
스태나인 점수
def stanine(z):
s = (2 * z + 5.5).astype(int)
s[s < 1] = 1
s[s > 9] = 9
return s
stanine(df['Z_price'])