• 카테고리

    질문 & 답변
  • 세부 분야

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

  • 해결 여부

    해결됨

기출 3회 작업형 2

24.04.15 13:51 작성 조회수 67

1

안녕하세요 빅분기 기출 3회 작업형2 문제를 풀던중 데이터 분리와 원핫인코딩을 안하고 LabelEncoder와 랜덤 포레스트를 사용해서 문제를 풀어보았는데 마지막 csv 제출에서 데이터길이가 차이 나서 만들어지지 않는다고 뜨네요 어디를 잡아야하는지 몰라 문의드려요🥲

  • 올려주신 데이터가 아닌 다른 문제집에 있는데이터를 활용했는데 길이 차이가 나더라구여..

답변 2

·

답변을 작성해보세요.

1

작업형2에서 흔히 하는 실수 중 하나에요! (매우 중요한 부분이기도 합니다.)

최종 예측은 val(검증)데이터가 아닌 test데이터로 진행해야 합니다.

데이터의 길이 차이로 에러가 발생했어요!

predict_proba()에 test 데이터를 넣어서 csv를 만들어주세요!

수지님의 프로필

수지

질문자

2024.04.15

아 계속 val로 예측 했네요!!😳 지금이라도 알았으니 수정해야겠어요 !! 감사합니다😊

0

인프런 AI 인턴님의 프로필

인프런 AI 인턴

2024.04.15

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

수지님께서 겪고 계신 “데이터 길이가 차이 나면서 CSV 파일로 제출하려고 할 때 발생하는 문제”에 대해서는, 수지님의 설명만으로는 정확한 원인을 파악하는데 제한적일 수 있지만, 일반적으로는 훈련 데이터와 예측할 데이터의 길이가 일치하지 않아 발생하는 오류로 보입니다. 이러한 오류는 두 주요 상황에서 발생할 수 있습니다:

  1. 예측 데이터(X_test)의 길이와 실제 예측 결과의 길이가 서로 다를 때:

    • 예측을 수행할 때 사용하는 모델의 입력 데이터셋(X_test)의 길이와, 모델이 출력하는 결과 데이터셋의 길이가 서로 일치해야 합니다. 예를 들어, 예측 데이터셋에 497개의 샘플이 있는데, 예측 결과가 298개의 결과만 생성된 경우, 이를 하나의 데이터프레임으로 합치려 할 때 문제가 발생합니다.
  2. 제출 파일을 생성할 때 예측 결과와 ID 또는 index의 길이가 다를 때:

    • 제출 파일을 생성할 때는 일반적으로 예측 결과와 각 예측에 해당하는 IDindex를 함께 저장합니다. 만약 이 IDindex의 길이가 실제 예측 결과의 길이와 다르면, Pandas 등의 라이브러리에서 길이가 일치하지 않는다는 오류를 발생시킵니다.

이와 유사한 문제를 겪었던 다른 학습자의 사례를 참고해보시면 도움이 될 것 같습니다. 다음은 비슷한 문제를 겪고 해결한 사례를 다룬 질문입니다:

  • 예시문제 작업형2(구 버전)“에서는 array length does not match index length 오류에 대한 해결 방법을 논의했습니다. 해당 질문에서는 예측 결과와 index 길이의 불일치가 문제의 원인으로 지적되었습니다. 데이터의 길이가 예측할 떄와 제출할 때 일치해야 한다는 점을 확인해보세요.

해당 사례들을 참고하여 수지님의 코드에서 예측 결과를 생성할 때 사용한 데이터의 길이와, 최종적으로 CSV로 저장하려는 데이터의 길이를 점검해보시길 권장합니다. 데이터 전처리 과정에서 LabelEncoder를 적용하거나 데이터를 분리하는 과정에서 길이가 변화하지 않았는지 확인하시고, X_test와 최종 예측 결과가 동일한 길이를 가지는지 확인해보시기 바랍니다.

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