Section 3. 항공권 가격 예측 질문
# 컬럼 삭제
train = train.drop('flight', axis=1)
test = test.drop('flight', axis=1)
안녕하세요 선생님! 고생많으십니다!
한번씩 train.pop을 진행하고 난 후에 컬럼을 하나씩 drop하는 경우가 있던데 이런건 어떻게 판단해서 진행을 해야할까요?
답변 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을 결정하시면 좋습니다. 머신러닝 모델을 설계할 때 특정 컬럼의 중요성을 판단하고 이에 따라 전처리를 수행하는 것이 성능 향상에 큰 도움이 됩니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
예측값 결과 소수점 차이
0
2
1
기출 문제와 실전챌린지 연습문제 무엇부터 푸는게 나은가요?
0
7
0
전처리 train() test([ ])
0
10
2
작업형 1 배경지식 질문
0
12
2
옳게 풀은건지 질문드립니다!
0
9
1
roc_auc_score
0
15
1
추가질문 합니다
0
12
1
시험환경 구름
0
13
1
2유형 질문드려요
0
9
1
RandomForest vs lgb
0
19
1
전처리 관련질문
0
16
2
작업형3 기출
0
14
1
유형2에서 데이터분할 생략 가능여부
0
25
2
9회 기출 유형3 질문
0
15
1
lgb 기초편
0
11
1
괄호 사용
0
17
1
작업형 2 데이터 전처리 질문
0
20
1
11회 기출 유형 작업형1 문제 3-1
0
16
0
예시문제 작업형2 (ver2023) 질문입니다
0
17
1
Data type에 따른 처리
0
18
2
데이터 전처리 관련
0
17
2
시험에서 문제 불러오기
0
18
2
2번문제 출력값 질문
0
24
2
pd.get_dummies()가 bool로 반환
0
19
2





