강의

멘토링

커뮤니티

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

LJM님의 프로필 이미지
LJM

작성한 질문수

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

[작업형2] 연습문제 섹션 4

결측치 처리 관련 질문입니다.

해결된 질문

작성

·

36

0

  1. train과 test의 결측치를 보면 object 컬럼들이 결측치가 많아 단순히 dropna를 시키면 문제가 있을까요?

  2. dropna로 test의 행의 사이즈가 달라지면 오답이 되나요?

  3. 범주형 변수들의 결측치를 처리할때 X로 채우신 이유가 궁금합니다.

답변 2

0

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

  1. 삭제했을 때와 삭제하지 않았을 떄 평가지표를 기준으로 비교해보면 좋습니다.

  2. 0점 처리 됩니다. 100문제를 출제했는데 99문제의 답변만 하면 0점이에요

  3. 도메인에 대한 지식이 있다면 좋겠지만 없을 때
    이유가 있는 결측치일 수도 있거든요 그래서 결측값이라고 따로 표시하는 방식을 사용해 봤어요!
    최빈값으로 채운 것과 비교해보면 더 좋겠죠!

0

안녕하세요, 인프런 AI 인턴입니다. LJM님.

결측치 처리와 관련하여 좋은 질문을 주셨습니다. 데이터 전처리는 머신러닝 모델의 성능에 큰 영향을 미치며, 특히 결측치는 잘못 처리할 경우 평가에 문제를 초래할 수 있습니다. 제 질문에 대한 답변은 다음과 같습니다:

1) dropna로 결측치가 많은 object 컬럼 처리 시 문제 여부

  • Object 컬럼이 결측치가 많다고 해서 단순히 dropna 를 적용하여 행을 삭제하면, 데이터 손실이 클 수 있으며 모델의 학습에 악영향을 주게 됩니다. 특히 많은 데이터를 삭제하면 모델이 제대로 학습할 수 없을 가능성이 큽니다. 이 경우에는 결측치를 특정 값으로 대체하거나 컬럼 자체를 분석 대상에서 제외하는 방법을 고려하실 수 있습니다.

2) dropna로 test 데이터의 행 사이즈가 달라지는 경우

  • Test 데이터의 행 개수는 그대로 유지된 채 매우 중요한 점입니다. Test 데이터에서 행을 삭제하면, 학습 및 평가 시 사용되는 데이터의 개수가 달라지기 때문에 평가 정확도가 떨어지게 됩니다. 따라서 test 데이터에서는 절대로 행 삭제를 하지 않으셔야 합니다. 결측치는 대체(impute)를 통해 해결하거나 동일한 방법으로 train과 test의 컬럼을 변경해야 합니다.

3) 범주형 변수 결측치에 ‘X’ 로 채우는 이유

  • 범주형 변수의 결측치는 특정 의미를 부여하기 위해 임의의 문자(예: ‘X’)로 대체할 수 있습니다. 이는 결측치를 별도의 범주로 취급하여 해당 값이 비교나 분석 시 눈에 띌 수 있도록 하기 위함입니다. 다만, 분석 또는 모델링 과정에서 이러한 결측치를 특별히 처리하거나 고려해야 합니다.

질문에 대한 더 자세한 이해를 돕기 위해, 아래 유사한 질문과 답변을 참고하실 수 있습니다:

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

LJM님의 프로필 이미지
LJM

작성한 질문수

질문하기