강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của skduddlcjs3086
skduddlcjs3086

câu hỏi đã được viết

Kỳ thi thực hành kỹ thuật viên phân tích dữ liệu lớn (Python)

Bài học 10. Bài tập 1 (Phân loại) – Tiền xử lý

10강 연습문제

Viết

·

162

0

1) X_train, X_test, y_train, y_test = train_test_split (df.iloc[:, 1:], df['survived'], test_size = 0.2, random_state = 42, stratify = df['survived'])

로 되어야 하는거 아닌가요?

연습문제에서 df만 하셨는데, 그렇게 하면 이미 답이 변수에 포함되어있어서 정확도가 1로 나옵니다.

 

2) 전처리 다 하고나서 저 train_test_split를 수행해도 되나요? 전처리 할 때 X_train, X_test 두번씩 꼭 해줘야 하는게 번거롭고 실수가 날 것 같아서요.

 

python빅데이터전처리

Câu trả lời 1

0

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

질문 주셔서 감사합니다. 데이터 전처리 및 학습 데이터 분리에 대한 궁금증을 해결하기 위해 비슷한 주제의 질문과 답변을 찾아봤습니다.

먼저, 데이터 전처리와 관련된 질문에 대한 답변 링크를 아래에서 확인하실 수 있습니다:

간단히 요약하면:
1. 먼저 train_test_split을 수행한 후 전처리를 하는 경우:
- 일반적으로 데이터셋을 분리한 후 각 데이터셋(X_train, X_test)에 대해 따로 전처리를 수행합니다. 이렇게 하는 이유는 훈련과 테스트 데이터셋이 다르게 분포되는 것을 방지하기 위함입니다.

  1. 전처리를 완료한 후 train_test_split을 수행하는 경우:
    • 전처리 과정에서 훈련 데이터에만 존재하는 특정 값이나 특성을 반영하지 않고, 전체 데이터에 대한 동일한 기준으로 전처리를 수행할 수 있습니다. 이후 train_test_split을 수행하면 한 번에 처리가 가능해 편리하지만, 이 경우에도 데이터 누수 가능성을 고려해야 합니다.

그래서 두 방법 모두 가능하지만 실수 방지 및 데이터 일관성을 유지하기 위해 첫 번째 방법을 추천드립니다.

위 링크들에서 더 자세한 설명을 제공하고 있으니 참고해보시길 바랍니다.

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

Hình ảnh hồ sơ của skduddlcjs3086
skduddlcjs3086

câu hỏi đã được viết

Đặt câu hỏi