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

wsyang님의 프로필 이미지
wsyang

작성한 질문수

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

예시문제 작업형2(신 버전)

풀이2번 방식 문의

해결된 질문

작성

·

58

0

X_tr, X_val, y_tr, y_val = train_test_split(train[cols], target, test_size = 0.2, random_state = 0)

 

이렇게 했으면 X_tr에 train[cols]가 들어가게 되는거같은데

모델 학습시

model.fit(X_tr) 이렇게만 해줘도 안되나요?

꼭 model.fit(X_tr[cols])까지 한번더 해줘야하나요?

답변 2

0

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

model.fit(X_tr)만 해주면 됩니다!
있어도 동일한 결과를 얻을 수 있겠네요!

0

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

질문 주신 내용은 데이터 분할 및 모델 학습과 관련된 내용이군요. train_test_split 함수로 X_tr에 이미 train[cols]가 들어가 있어도, 모델 학습 시 꼭 model.fit(X_tr[cols]) 형태로 해야 하는지 궁금하신 것 같습니다.

이미 train[cols]로 데이터가 제한된 상태에서 train_test_split을 사용하셨기 때문에, model.fit(X_tr, y_tr)로 호출하셔도 문제는 없습니다. 즉, X_tr[cols]를 사용할 필요 없이 X_tr 그대로 사용하셔도 됩니다. 결과적으로 코드의 간결성을 유지할 수 있으며, 추가로 특정 컬럼을 명시적으로 다시 한정할 필요가 없기 때문입니다.

유사한 질문과 답변이 있었던 내용은 다음 링크를 참고하시기 바랍니다:

  • 데이터 split 관련 질문
    이 게시물은 이미 cols를 한정했을 경우 모델 학습 시 다시 제한할 필요가 없다는 점을 설명하는 내용이 포함되어 있습니다.

  • 왜 다시 [cols]로 한정하나요?
    이 질문도 같은 맥락에서 설명해 드리고 있으며, 기존 train[cols]로 제한한 데이터를 모델 학습 시 별도로 cols로 지정할 필요가 없다는 답변을 포함하고 있습니다.

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

wsyang님의 프로필 이미지
wsyang

작성한 질문수

질문하기