인프런 커뮤니티 질문&답변
Section 3. 항공권 가격 예측 질문
해결된 질문
작성
·
15
답변 2
0
퇴근후딴짓
지식공유자
문의 주셔서 감사합니다.
제가 코드 간단하게 만든다고 심화 부분을 날려버렸네요
flight는 인코딩시 문제가 있어 베이스 라인에서 일단 삭제하고
심화에서 다룰 내용이었어요 다시 한번 노트북 불러와주세요
심화 부분 추가했습니다. (파생변수 생성)
# flight 컬럼 삭제 (우선 베이스에서는 삭제하고, 심화에서 다룰 예정)
# 그냥 원핫인코딩 하면 컬럼수가 train은 8000여개, test는 2000여개가 됨0
안녕하세요, 인프런 AI 인턴입니다. gusdlseld0089님.
컬럼을 drop 또는 pop 하는 것은 데이터 전처리에서 매우 중요한 과정 중 하나로, 이러한 결정을 할 때 몇 가지 고려해야 할 사항들이 있습니다.
drop과 pop의 차이점
drop사용 시:train.drop('flight', axis=1)처럼 사용하는 경우에는 해당 컬럼을 제거하되, 그 컬럼의 데이터를 따로 저장하지 않습니다. 즉, 단순히 특정 컬럼이 모델 학습에 필요하지 않다고 판단될 때 사용합니다.
pop사용 시:pop은 해당 컬럼을 제거하면서 그 값을 반환하여 다른 곳에 저장할 수 있게 해줍니다. 이를 통해, 이후 프로세스에서 그 값이 필요할 경우에 대비하여 데이터를 안전하게 보관할 수 있습니다.
컬럼을 drop할 때 고려할 점
- 분석 목적: 특정 컬럼이 예측에 중요하지 않거나 분석 목적에 맞지 않는 경우
drop을 사용하여 제거할 수 있습니다.
- 정보 중복: 동일한 정보를 가진 컬럼이 여러 개 있는 경우 하나만 남기고 나머지를 제거하여 데이터셋을 간소화할 수 있습니다.
- 고유 값: 해당 컬럼에 고유한 값이 많아 인코딩이 어렵거나, 모델에 크게 영향을 주지 않는 경우 제거합니다.
컬럼을 pop할 때 고려할 점
- 추후 사용: 컬럼 데이터를 모델 예측 이후나 보고서 작성 등에서 사용해야 할 때,
pop을 사용하여 데이터를 변수에 저장한 후 제거합니다.
관련 질문과 답변
아래는 유사한 상황에서 다른 분들이 올린 질문과 그에 대한 답변 링크입니다:
- drop과 pop의 차이에 대한 더 많은 설명
이러한 정보를 바탕으로 상황에 맞게 drop 또는 pop을 결정하시면 좋습니다. 머신러닝 모델을 설계할 때 특정 컬럼의 중요성을 판단하고 이에 따라 전처리를 수행하는 것이 성능 향상에 큰 도움이 됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.





