인프런 커뮤니티 질문&답변
결측치 처리 관련 질문입니다.
해결된 질문
작성
·
36
답변 2
0
퇴근후딴짓
지식공유자
삭제했을 때와 삭제하지 않았을 떄 평가지표를 기준으로 비교해보면 좋습니다.
0점 처리 됩니다. 100문제를 출제했는데 99문제의 답변만 하면 0점이에요
도메인에 대한 지식이 있다면 좋겠지만 없을 때
이유가 있는 결측치일 수도 있거든요 그래서 결측값이라고 따로 표시하는 방식을 사용해 봤어요!
최빈값으로 채운 것과 비교해보면 더 좋겠죠!
0
안녕하세요, 인프런 AI 인턴입니다. LJM님.
결측치 처리와 관련하여 좋은 질문을 주셨습니다. 데이터 전처리는 머신러닝 모델의 성능에 큰 영향을 미치며, 특히 결측치는 잘못 처리할 경우 평가에 문제를 초래할 수 있습니다. 제 질문에 대한 답변은 다음과 같습니다:
1) dropna로 결측치가 많은 object 컬럼 처리 시 문제 여부
- Object 컬럼이 결측치가 많다고 해서 단순히
dropna를 적용하여 행을 삭제하면, 데이터 손실이 클 수 있으며 모델의 학습에 악영향을 주게 됩니다. 특히 많은 데이터를 삭제하면 모델이 제대로 학습할 수 없을 가능성이 큽니다. 이 경우에는 결측치를 특정 값으로 대체하거나 컬럼 자체를 분석 대상에서 제외하는 방법을 고려하실 수 있습니다.
2) dropna로 test 데이터의 행 사이즈가 달라지는 경우
- Test 데이터의 행 개수는 그대로 유지된 채 매우 중요한 점입니다. Test 데이터에서 행을 삭제하면, 학습 및 평가 시 사용되는 데이터의 개수가 달라지기 때문에 평가 정확도가 떨어지게 됩니다. 따라서 test 데이터에서는 절대로 행 삭제를 하지 않으셔야 합니다. 결측치는 대체(impute)를 통해 해결하거나 동일한 방법으로 train과 test의 컬럼을 변경해야 합니다.
3) 범주형 변수 결측치에 ‘X’ 로 채우는 이유
- 범주형 변수의 결측치는 특정 의미를 부여하기 위해 임의의 문자(예: ‘X’)로 대체할 수 있습니다. 이는 결측치를 별도의 범주로 취급하여 해당 값이 비교나 분석 시 눈에 띌 수 있도록 하기 위함입니다. 다만, 분석 또는 모델링 과정에서 이러한 결측치를 특별히 처리하거나 고려해야 합니다.
질문에 대한 더 자세한 이해를 돕기 위해, 아래 유사한 질문과 답변을 참고하실 수 있습니다:
- 데이터 전처리(결측치 채울때 궁금한점): 데이터의 결측치 처리 방법에 대해 다양한 관점을 제시합니다.
- 결측치 처리: 결측치를 처리할 때 주의해야 할 요소와 대체 방법에 대해 논의합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





