작업형2 인코딩 질문
2
1 asked
안녕하세요 현재 작업형 2 문제 풀이 중 인코딩을 하는 경우 아래와 같이 코드를 작성하고 있습니다
import pandas as pd
train= pd.read_csv('/content/churn_train.csv')
test= pd.read_csv('/content/churn_test.csv')
#(4116, 19) (1764, 18)
target= train.pop('TotalCharges')
#1. 인코딩
df= pd.concat([train, test])
df1= pd.get_dummies(df)
train= df1.iloc[:len(train)].copy()
test= df1.iloc[len(train):].copy()
인코딩 후 train, test로 나누는 과정에서 미리 train의 길이를 지정하고 그 변수를 넣는 것이 맞는 걸까요? 아니면 기존의 방식 (위) 처럼 해도 무관한지 궁금합니다
import pandas as pd
train= pd.read_csv('/content/churn_train.csv')
test= pd.read_csv('/content/churn_test.csv')
#(4116, 19) (1764, 18)
target= train.pop('TotalCharges')
train_len= len(train)
#1. 인코딩
df= pd.concat([train, test])
df1= pd.get_dummies(df)
train= df1.iloc[:train_len].copy()
test= df1.iloc[train_len:].copy()
Answer 1
0
안녕하세요, 인프런 AI 인턴입니다. 김민성 님의 질문에 답변드리겠습니다.
인코딩 후 데이터 분리 방법
원핫 인코딩 후 데이터를 다시 train과 test로 나누는 방법에 대해 질문 주셨습니다. 두 가지 방법 모두 기술적으로 같은 결과를 얻을 수 있어 무관하지만, 가독성과 명확성을 위해 일반적으로 두 번째 방식이 많이 사용됩니다. 이를 통해 코드의 의도를 개발자 자신과 다른 사람이 이해하기에 더 쉽기 때문입니다.
첫 번째 방식: 직접
len(train)으로 인덱스를 나누어 데이터를 분할합니다. 이 방법은 한눈에 코드를 읽었을 때 인코딩 후 데이터 분할의 의도가 명확하지 않을 수 있습니다.두 번째 방식:
train_len이라는 변수를 생성하여 사용하는 방식은 코드의 명료성을 높이는 데 도움이 됩니다. 특히 코드가 길거나 유지보수해야 하는 경우 유용합니다. 이 방식을 통해 코드 작성을 진행한다면, 코드를 검토하거나 수정할 때 전체적으로 더 쉽게 이해할 수 있습니다.
추천 링크
관련된 기존 질문 및 설명을 다룬 링크도 제공드립니다:
위의 게시물들은 데이터 처리 후 원핫 인코딩 및 데이터 분할 과정에서의 주의 사항들을 상세히 다룹니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
작업형 3 벼락치기 공부방법 질문
0
4
1
기출 11회 작업형 2_전체 데이터 학습 여부
0
20
1
예측값 결과 소수점 차이
0
24
2
기출 문제와 실전챌린지 연습문제 무엇부터 푸는게 나은가요?
0
18
0
전처리 train() test([ ])
0
18
2
작업형 1 배경지식 질문
0
21
2
옳게 풀은건지 질문드립니다!
0
15
1
roc_auc_score
0
25
2
추가질문 합니다
0
18
2
시험환경 구름
0
19
2
2유형 질문드려요
0
17
2
RandomForest vs lgb
0
24
2
전처리 관련질문
0
25
3
작업형3 기출
0
18
2
유형2에서 데이터분할 생략 가능여부
0
30
2
9회 기출 유형3 질문
0
21
2
lgb 기초편
0
16
2
괄호 사용
0
24
2
작업형 2 데이터 전처리 질문
0
22
1
11회 기출 유형 작업형1 문제 3-1
0
20
1
예시문제 작업형2 (ver2023) 질문입니다
0
20
2
Data type에 따른 처리
0
21
2
데이터 전처리 관련
0
20
2
시험에서 문제 불러오기
0
20
2

