StandardScaler와 MinMaxScaler는 데이터 전처리 기술로, 머신러닝 모델을 훈련하기 전에 데이터의 스케일을 조정하는 데 사용됩니다. 이를 통해 모델이 데이터의 특성을 더 정확하게 학습할 수 있도록 도와줍니다.
StandardScaler
StandardScaler는 데이터의 평균을 0으로, 표준편차를 1로 만들어줍니다. 이는 데이터를 표준 정규분포(평균 0, 표준편차 1)로 변환하는 것과 비슷한 효과를 줍니다. 이 방법은 주로 선형 회귀, 로지스틱 회귀, SVM 등과 같은 모델에서 사용됩니다.
from sklearn.preprocessing import StandardScaler
# 예시 데이터
data = [[1.0, 2.0],
[2.0, 3.0],
[3.0, 4.0],
[4.0, 5.0],
[5.0, 6.0]]
scaler = StandardScaler()
scaled_data = scaler.fit_transform(data)
print("Scaled Data:")
print(scaled_data)
MinMaxScaler
MinMaxScaler는 데이터의 최솟값을 0으로, 최댓값을 1로 만들어줍니다. 이는 데이터의 범위를 [0, 1]로 조정하는 효과가 있습니다. 이 방법은 신경망과 같은 딥러닝 모델에서 주로 사용됩니다.
from sklearn.preprocessing import MinMaxScaler
# 예시 데이터
data = [[1.0, 2.0],
[2.0, 3.0],
[3.0, 4.0],
[4.0, 5.0],
[5.0, 6.0]]
scaler = MinMaxScaler()
scaled_data = scaler.fit_transform(data)
print("Scaled Data:")
print(scaled_data)
이 코드에서 fit_transform 함수는 데이터를 변환하고 동시에 스케일러를 학습시키는 역할을 합니다. 스케일링된 데이터는 각각 scaled_data 변수에 저장됩니다. 데이터의 스케일링은 각 특성(feature)의 범위를 조정하여 모델 학습에 도움을 줍니다. 선택하는 스케일러는 데이터와 모델 종류에 따라 달라질 수 있습니다.
해당 게시글은 ChatGPT의 도움을 받아 작성되었습니다.
'Big Data > DataAnalysis & Manipulate' 카테고리의 다른 글
[Pandas] datetime 프로퍼티 (0) | 2023.09.08 |
---|---|
[pandas] columns.difference (0) | 2023.08.28 |
Apriori 알고리즘 (0) | 2023.08.16 |
연관 규칙 분석 (0) | 2023.08.16 |
pd.pivot_table() (0) | 2023.08.16 |