답변함

실기 기출문제 질의

데이터프레임 병합이나 데이터 분할시 기존에 설명하셨던 pd.concat()이나 분할시 객체 생성시 train_data와 test_data로 생성하면 되는거 아닌지요? 실제 시험에서 pd.merge()로 병합이나 valid_data로 분할시 객체 생성을 반드시 해야하는 문제가 있는지 설명 부탁드립니다. 시험 목적에 맞게 함수나 용어를 최소한으로 사용할 수 있도록 강의해 주셨으면 합니다. 

 

 

 

0

댓글

댓글 1개
날짜 투표수
  • 결론부터 말씀드리면, 시험에서 pd.merge()나 valid_data라는 이름을 꼭 써야 하는 것은 아닙니다. 작업형 2유형은 제출한 예측 결과 파일로 채점하기 때문에, 어떤 함수를 썼는지나 변수 이름이 무엇인지는 점수와 관계가 없습니다.

    1. merge 대신 concat을 써도 되나요?됩니다. 다만 조건이 있습니다.pd.concat([x, y], axis=1)은 두 데이터의 행 순서가 같을 때만 맞게 붙습니다. 시험에서 주는 x_train과 y_train은 보통 같은 순서로 되어 있습니다.y_train에도 carID 열이 있으면 concat 결과에 carID가 두 번 들어갑니다. 그래서 타깃 열만 붙여야 합니다.merge(on='carID')는 행 순서가 달라도 carID를 기준으로 맞춰 줍니다. 그래서 더 안전하지만, 순서가 같다면 결과는 같습니다.

    2. 분할할 때 test_data라는 이름을 써도 되나요? 됩니다. 변수 이름은 자유입니다. 다만 시험에는 실제로 예측해서 제출할 x_test가 따로 있습니다. 그래서 분할한 검증용 데이터를 test_data라고 부르면 둘이 헷갈리기 쉽습니다. 이 점 때문에 강의에서 valid라는 이름을 썼습니다.

    0

댓글을 남기려면 로그인하세요.

 

원하는 것을 찾지 못하셨나요?

질문하기