데이터 전처리 질문
62
작성한 질문수 25
학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요!
질문과 관련된 영상 위치를 알려주면 더 빠르게 답변할 수 있어요
먼저 유사한 질문이 있었는지 검색해보세요
안녕하세요
train = train.drop('id', axis=1)
test_id = test.pop('id')
왜 트레인은 axis를 넣는데
테스트아이디는 저걸 넣지 않을껄까요
답변 2
0
우선 함수 자체가 다릅니다.
drop은 컬럼을 제거할 때는 축 선택이 필요해요 기본적으로 axis가 0(행삭제)입니다.
pop은 컬럼을 test_id로 복사하고 나서 제거합니다. (대입과 drop을 동시에 수행)
이 때 이렇게 작업한 이유는
train id는 버리는 용도
test_id는 나중에 csv에서 사용하는 용도였습니다.
11회 응시가이드에 예측컬럼 1개 컬럼만 제출한다라고 되어 있으므로
test_id를 나중에 csv로 만드는 일은 없어졌어요.
0
네, 11회에서 응시가이드에 1개 컬럼만 제출이라고 명시했기 때문에
예측 결과 컬럼만 있으면 됩니다.
test의 id는 필요가 없습니다.
이 문제에서는 id와 예측컬럼을 함께 2개의 컬럼으로 제출하는 형태입니다.
0
안녕하세요, 인프런 AI 인턴입니다. gamb21님.
질문하신 데이터 전처리 관련 코드에 대해 설명드리겠습니다.
드롭에서의
axis인자:train.drop('id', axis=1)에서axis=1은 열을 기준으로 드롭하겠다는 것을 의미합니다.axis=0이면 행을 드롭하는 것을 의미하므로, 열을 제거할 때는axis=1을 명시해야 합니다.
pop과drop의 차이:test.pop('id')은id컬럼을 제거하면서 그 컬럼의 데이터를test_id변수에 저장합니다. 이 과정은 자동으로 열 기준으로 수행되므로axis를 지정할 필요가 없습니다.
drop과pop사용의 차이:drop은 단순히 컬럼이나 행을 삭제하지만,pop은 삭제하는 동시에 그 값을 반환하여 다른 변수에 저장할 수 있습니다. 이때 행인지 열인지를 판단하기 위해pop사용시axis를 명시하지 않아도 열 기준으로 동작합니다.
이러한 처리 과정은 데이터 전처리에서 매우 기본적이지만 중요한 부분입니다. drop은 데이터를 영구적으로 삭제하면서 반환값이 없지만, pop은 삭제된 데이터를 반환하기 때문에 이후에 사용할 수 있습니다.
아래 링크에서 비슷한 예시를 살펴보실 수 있습니다:
- drop과 pop의 차이에 대한 더 많은 설명
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
9회 기출 유형3 질문
0
3
1
lgb 기초편
0
4
1
괄호 사용
0
5
1
작업형 2 데이터 전처리 질문
0
6
0
11회 기출 유형 작업형1 문제 3-1
0
6
0
예시문제 작업형2 (ver2023) 질문입니다
0
8
1
Data type에 따른 처리
0
5
1
데이터 전처리 관련
0
12
2
시험에서 문제 불러오기
0
12
2
2번문제 출력값 질문
0
15
2
pd.get_dummies()가 bool로 반환
0
16
2
대응표본검정 레빈
0
18
3
단일표본검정 문제 유형
0
19
2
[작업형 3] 6~7. 카이제곱 검정
0
16
2
9회 작업형3 문제 1-1
0
30
2
최종답안 계산 방식 질문
0
18
1
시험 치기 전 급하게 질문 사항
0
31
2
유형3
0
29
2
작업형 2 연습문제 섹션 3
0
19
2
11 기출문제 ipynb파일
0
32
2
작업형 3 유형
0
26
2
11회 기출 유형(작업형1) 2번 정답
0
27
2
f1 score 질문
0
22
2
10회 작업형 2 인코딩 질의
0
19
2





