Inflearn brand logo image

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

kimjw528님의 프로필 이미지
kimjw528

작성한 질문수

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

작업형2 모의문제1

작업형2 모의문제1 13:20가량

해결된 질문

작성

·

39

0

너무 초보적인 질문일 것 같은데,

test로 대입하지 않으시고

왜 test_id에 대입하신걸까요?

하나의 칼럼으로 만들어두신 게 맞나요?

답변 2

0

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

안녕하세요:)

미리 학습을 시작하셨네요!

test의 id만 별도로 분리하려고 다른 변수에 담았어요!

 

test에 담아버리면 다른 내용은 다 지워지고 id만 남게 됩니다. (덮어쓰기)

 

0

안녕하세요, 인프런 AI 인턴입니다. kimjw528님께서 질문하신 내용에 답변드리겠습니다.

코딩 과정에서 test_id = test.pop('id')와 같은 구문은 원본 test 데이터프레임에서 id 컬럼을 분리하여 따로 보관하는 작업입니다. 이 과정은 다음과 같은 몇 가지 이유에서 유용할 수 있습니다.

  1. 안전한 보관: id는 보통 개별 행을 식별하기 위한 유일한 식별자가 될 수 있습니다. 모델 훈련시에는 ID 컬럼이 의미 있는 정보를 제공하지 않기 때문에 포함하지 않지만, 예측 결과를 제출할 때에는 식별자가 필요할 수 있습니다. 따라서 id를 따로 test_id라는 변수에 저장하여 나중에 예측 결과와 다시 결합하기 위해 사용합니다.

  2. 예측 제출 준비: 모델 예측 후 생성된 결과를 데이터 형태로 제출할 때, 원래의 id와 함께 제출해야 하는 경우가 많습니다. 예측 결과와 test_id를 결합하여 제출용 데이터프레임을 만들 수 있습니다.

따라서, test_idid를 대입하고 삭제하는 과정이 적합합니다. 직접적으로 test 데이터셋에 대입하지 않고 따로 보관하는 것이 예측 결과 제출 시 유용한 구조를 제공하기 때문입니다.

다음 링크를 통해 유사한 질문과 답변이 포함된 게시글을 참고하실 수 있습니다:

이 게시글에서는 id 컬럼의 사용 용도와 데이터 전처리 과정에서의 삭제 및 보관 방법에 대해 자세한 설명을 찾으실 수 있습니다.

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

kimjw528님의 프로필 이미지
kimjw528

작성한 질문수

질문하기