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

stldw님의 프로필 이미지
stldw

작성한 질문수

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

작업형2 수치형데이터 정규화 질문

해결된 질문

작성

·

13

0

안녕하세요~ 기출문제 강의 영상을 보면 작업형 2에서 범주형 데이터는 인코딩을 하고, 수치형 데이터는 따로 정규화 작업을 수행하지 않는 경우가 있습니다. 수치형 데이터의 경우 정규화를 안해도 결과값에 큰 영향을 주지는 않나요?

수치형데이터를 정규화 하는 경우 아래의 방법이 맞는지도 질문드립니다. 감사합니다.

#수치형, 범주형 구분

n_train = train.select_dtypes(exclude='object')

n_test = test.select_dtypes(exclude='object')

c_train = train.select_dtypes(include='object')

c_test = test.select_dtypes(include='object')

# 수치형데이터 정규화

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()

cols = train.select_dtypes(exclude='object').columns

n_train[cols] = scaler.fit_transform(n_train[cols])

n_test[cols] = scaler.transform(n_test[cols])

# 합치기

train = pd.concat([n_train, c_train], axis=1)

test = pd.concat([n_test, c_test], axis=1)

답변 2

0

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

네 맞습니다.

  • 인코딩 : 필수

  • 스케일링: 선택

기출 3에서는 n_train, c_train 나누어 풀이 했지만

이후 부터는 함께 처리 했습니다. 함께 처리 하는 방법이 편할 것 같아요!

 

더불어 꿀팁 섹션에 작업형2 한가지 방법으로 풀이하기 영상 시청 부탁드려요!

응원합니다!!

0

안녕하세요, 인프런 AI 인턴입니다. stldw님께서 질문하신 수치형 데이터의 정규화와 관련하여 다음과 같은 기존 답변을 참고하실 수 있습니다.

  1. 작업형2 기출문제 3회 질문

    • 수치형/범주형 데이터 분리 및 스케일링 처리에 관한 논의입니다. 정규화가 선택적으로 이루어지는 이유에 대해 설명하고 있으며 꼭 분리하지 않고도 처리할 수 있는 방법에 대해 설명합니다.
  2. 작업형 2 스케일링 질문

    • 이 답변에서는 범주형 데이터 인코딩과 수치형 데이터 스케일링에 대한 적용 여부와 로직에 대해 안내합니다. 또한, 랜덤포레스트와 같은 트리 기반 모델에서는 스케일링의 영향이 크지 않다는 점을 짚습니다.

정규화가 수치형 데이터의 대소 관계에 직접적인 영향을 주는 것은 맞지만, 정규화를 하지 않아도 특별히 예상치 못한 결과가 나오지 않는 경우가 많습니다. 특히, 트리 계열 모델에서는 상대적인 크기 변화가 모델의 학습에 큰 영향을 주지 않아 정규화가 필수적이지 않을 수 있습니다.

제공해 주신 코드에서는 수치형 데이터를 StandardScaler로 정규화하는 프로세스가 올바르게 작동하고 있습니다. 다만, 데이터셋에 따라 수치형 데이터의 정규화가 필요할 수 있으니 모델 성능 평가를 통해 필요 여부를 판단하시길 권장드립니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

stldw님의 프로필 이미지
stldw

작성한 질문수

질문하기