🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    자격증 (데이터 사이언스)

  • 해결 여부

    해결됨

이상치 IQR 처리

23.06.15 00:07 작성 조회수 199

0

cols = list(X_train.columns[X_train.dtypes != object])
print(cols)

for col in cols:
  Q1 = X_train[col].quantile(0.25)
  Q3 = X_train[col].quantile(0.75)
  IQR = Q3 - Q1
  min_iqr = Q1 - 1.5*IQR
  max_iqr = Q3 + 1.5*IQR
  X_train.loc[X_train[col]<min, col] = min_iqr
  X_train.loc[X_train[col]>max, col] = max_iqr

print(X_train)

이렇게 하고 X_test도 똑같이 해도 될까요?

답변 1

답변을 작성해보세요.

1

아니요! 테스트에 이렇게 적용하면 0점입니다 테스트 데이터의 행(레코드)는 삭제되면 절대 안됩니다

iqr 이상치 처리가 좋을 때도 있는데 데이터에 따라 너무 많은 데이터가 삭제되기도 해요~

이상치 처리는 문제에 명시된 것이나 나이(age)처럼 누구나 알 수 있는 것이 아니면 권장하지 않습니다

채널톡 아이콘