train 과 test 데이터의 이상/결측치 처리 방법이 헷갈립니다.
102
작성한 질문수 8
train data에서 결측치 행은 삭제해도 되나, test data의 결측치 행은 삭제하면 안됨.
train data에서 결측치 열은 삭제해도 되고, 삭제했다면 test data의 같은 열도 삭제해줘야함
train data에서 결측치 행을 채워주었다면, test data의 결측치도 동일한 방법으로 채워주어야 함.
근데 결측치/이상치는 처리하란 말 없으면 안해도 됨.
이게 맞는건가요..?1번은 제출 양이 같아서인건 알겠는데, 2.3번은 왜일까요 ?
답변 3
0
그럼 정리하자면, 이게 맞을까요!
1. 결측치 : train, test 모두 처리해주어야 함 -> 안하면 에러발생
2. 컬럼수 : train, test가 동일해야 정상작동하므로 맞춰주어야 함
3. train에서 성능이 좋아지는 방향으로 결측치를 채우고, 동일한 방법으로 test도 채워준다. (다른 방법을 써도 되나, 성능이 좋아질지 나빠질지는 모르니 동일하게 사용)
0
머신러닝은 fit(학습)할 때 컬럼의 수와 이름이
predic(예측) 할 때 컬럼의 수와 이름이 같아야 정상작동합니다.
그래서 동일하게 전처리가 필요해요예를들어 train에는 중앙값, test에는 평균값을 채웠다면 성능이 더 좋아질지 떨어질지는 알수 없어요. train에서 중앙값보다 평균이 검증데이터 평가 지표로 성능이 좋아졌다면, test도 평균을 채우는 것입니다. (반드시는 아니에요! 해당 도메인 전문가라면 이유가 있을 수도 있어요)
이상치는 처리 안해도 에러는 발생하지 않지만, 결측치는 처리 안하면 에러 발생합니다.
0
안녕하세요, 인프런 AI 인턴입니다. bonanza9312님.
데이터 전처리 과정에서 train과 test 데이터의 결측치와 이상치에 대한 처리 방법은 모델의 성능과 평가 결과에 큰 영향을 미칠 수 있습니다. 질문 주신 내용을 바탕으로 자세한 설명을 드리겠습니다.
1) Train 데이터의 결측치 행 삭제
- 맞습니다. train 데이터에서는 학습에 영향을 줍니다. 데이터의 양이 충분하다고 가정할 때, 결측치가 많은 행을 제거하여 학습 데이터의 질을 높일 수 있습니다.
2) Train과 Test 데이터의 결측치 열 삭제
- train 데이터와 test 데이터에서 동일한 열을 삭제해야 하는 이유는 일관성을 유지하기 위해서입니다. 모델은 train 데이터에 대해 학습한 특성(열)을 바탕으로 test 데이터에 대해 예측을 수행합니다. 따라서 학습 시 사용된 특성과 일치하도록 test 데이터 역시 해당 열을 삭제해야 정확한 예측이 가능합니다.
3) 결측치를 채우는 방법의 일관성
- 결측치를 채울 때 동일한 방법을 사용하는 이유는 모델 학습과 평가 시 데이터의 일관성을 유지하고, train 데이터에 적용된 전처리 방법이 test 데이터에도 동일하게 적용되어야지만 올바른 평가가 이루어지기 때문입니다.
4) 결측치/이상치가 언급된 지침 없는 경우
- 지침이 없는 경우 특별한 처리 없이도 보통 데이터를 그대로 사용하는 것이 문제가 되지 않을 수 있습니다. 하지만, 관습적으로 기본적인 전처리를 적용하는 것이 일반적이며, 문제의 성격이나 데이터의 분포에 따라 판단해야 합니다.
관련된 기존 질문과 답변은 아래에서 참고하실 수 있습니다:
- 데이터 전처리(결측치 채울때 궁금한점): 데이터의 결측치를 처리하는 방법과 그 이유에 대해 설명하고 있습니다.
- 3-3 데이터 전처리 질문: 테스트 데이터에서 결측치를 처리하는 일반적인 방법에 대해 다루고 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
데이터 전처리 관련
0
5
2
시험에서 문제 불러오기
0
4
2
2번문제 출력값 질문
0
10
2
pd.get_dummies()가 bool로 반환
0
9
2
대응표본검정 레빈
0
16
3
단일표본검정 문제 유형
0
17
2
[작업형 3] 6~7. 카이제곱 검정
0
15
2
9회 작업형3 문제 1-1
0
23
2
최종답안 계산 방식 질문
0
16
1
시험 치기 전 급하게 질문 사항
0
26
2
유형3
0
25
2
작업형 2 연습문제 섹션 3
0
18
2
11 기출문제 ipynb파일
0
24
2
작업형 3 유형
0
24
2
11회 기출 유형(작업형1) 2번 정답
0
22
2
f1 score 질문
0
19
2
10회 작업형 2 인코딩 질의
0
17
2
53번 강의에서 갑자기 수업노트가 없어졌습니다.
0
21
2
28:19 roc_auc이유
0
21
2
수강연장문의
0
23
2
전체적인 머신러닝 순서
0
26
2
빅분기 실기 유형2질문
0
26
1
ID 전처리 이유
0
34
2
데이터제공
0
33
2





