데이터 전처리
데이터 전처리 유형
데이터 전처리 방법
특징 표준화
from sklearn import preprocessing import numpy as np X = np.array([[1, -2, 2],[3,0,0], [0,1,-1]]) X_scaled = preprocessing.scale(X)
특징 정규화
X_normalized_l1 = preprocessing.normalize(X, norm='l1') X_normalized_l2 = preprocessing.normalize(X, norm='l2')
특징의 범위 확장
min_max_scaler = preprocessing.MinMaxScaler() X_min_max = min_max_scaler.fit_transform(X)
min_max_scaler = preprocessing.MinMaxScaler(feature_range = (-10,10)) X_min_max = min_max_scaler.fit_transform(X)
특징 이진화
binarizer = preprocessing.Binarizer(threshold=0.5) X_binarized = binarizer.transform(X)
누락된 데이터 처리
scikit-learn에서는 누락된 값을 대체하는 3가지 방법
- median: 모든 nan값을 행렬의 지정된 축을 따라 중앙값으로 바꾼다. (기본값 axis=0)
- most_frequent: 모든 nan값을 행렬의 지정된 축을 따라 가장 빈버낳ㄴ 값으로 대체한다. (기본값 axis=0)
from sklearn.impute import SimpleImputer imp = SimpleImputer(strategy='mean') X2 = imp.fit_transform(X) imp = SimpleImputer(strategy='median') X3 = imp.fit_transform(X)