인프런 커뮤니티 질문&답변

dkqehs님의 프로필 이미지
dkqehs

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

예시문제 작업형1

스케일링 문제

해결된 질문

작성

·

36

·

수정됨

0

해당 예시 문제를 밑의 식으로 풀이를 해보았는데,

import pandas as pd
df = pd.read_csv('mtcars.csv')

from sklearn.preprocessing import minmax_scale

print('변환 전 :',df['qsec'].head())
df['qsec'] = minmax_scale(df['qsec'])
print('변환 후 :', df['qsec'].head())

cond = df['qsec'] >0.5
sum(cond)

제가 알기로 스케일링 할 수 있는게 min-max, standard,robust 이렇게 3가지가 있는데, 만약 minmax가 아닌 standard,robust를 이용하게 된다면 코드를 어떻게 작성을 해야할까요?

 

 

답변 1

1

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

# StandardScaler# 
from sklearn.preprocessing import StandardScaler
scaler = StandardScaler()
df['qsec'] = scaler.fit_transform(df[['qsec']])  # fit_transform 사용
# RobustScaler
from sklearn.preprocessing import RobustScaler
scaler = RobustScaler()
df['qsec'] = scaler.fit_transform(df[['qsec']])  # fit_transform 사용

작성이의 민맥스 함수도 맞지만 작업형1에만 쓸 수 있고 작업형2에서는 쓰기 어렵습니다.

작업형2를 고려한다면 아래와 같이 사용할 수 있어요

#MinMaxScaler
from sklearn.preprocessing import MinMaxScaler
scaler = MinMaxScaler()
df['qsec'] = scaler.fit_transform(df[['qsec']])  # fit_transform 사용
dkqehs님의 프로필 이미지
dkqehs

작성한 질문수

질문하기