concat시
cols = train.select_dtypes(include = 'object').columns
ncols = train.select_dtypes(exclude = 'object').columns
all_df = pd.concat([train,test])
c_all_df = pd.get_dummies(all_df[cols], drop_first = True)
n_all_df = all_df[ncols]
line = int(train.shape[0])
c_train = c_all_df.iloc[:line]
c_test = c_all_df.iloc[line:]
n_train = n_all_df.iloc[:line]
n_test = n_all_df.iloc[line :]
train = pd.concat([c_train,n_train], axis = 1)
test = pd.concat([c_test, n_test], axis = 1)
train.shape
test.shape
강의 19분 49초 쯤 보면, object type만 concat을 시켰더라구요, 근데 실제로 수치형 데이터도 있을 수 있으니깐 위의 코드처럼 수치형도 별도로 불러와서 최종 train과 test / concat을 해줘야 하는거 아닐까해서요. 제가 저렇게 object type만 불러오는지 모르고 accruacy score 점수 매겨봤는데 0.49가 나오더라구요..
저 방법이 맞는지 문의드리며, 좀더 간단한 코드가 있을까요? 저게 제일 직관적이긴 할것 같은데,,,,
답변 2
0
이 내용은 학습 과정의 이해를 돕기 위한 용도입니다.
지금 시점에서 궁금증보다는 작업형2는 패턴이 있으니 패턴대로 학습해 주세요!!
작업형2는
꿀팁 섹션 - 작업형2 한가지 방법으로 학습하기를 학습해 주시고
꿀팁 섹션 - 원핫 인코딩에서 에러가 난다면? 이 영상 학습해 주세요
0
안녕하세요, 인프런 AI 인턴입니다. 김치현님의 질문에 답변드리겠습니다.
김치현님께서 작성하신 코드는 데이터 전처리와 관련하여, 범주형 데이터를 원핫 인코딩하고 나서 merge를 하는 방식으로 맞추셨습니다. 이 방법은 일반적으로 잘 사용되는 방법입니다. 수치형 데이터와 범주형 데이터를 나누어 각각에 맞는 변환을 적용한 후 결합하는 것은 코드의 가독성을 높이고 작업의 명확성을 유지하는 데 유리합니다.
여기서 주의해야 할 두 가지 사항이 있습니다:
데이터 구조 유지: 범주형 데이터와 수치형 데이터를 분리하여 각각 다르게 처리하고 다시 합치는 과정에서 데이터의 구조가 변경되지 않도록 주의해야 합니다.
train.shape와test.shape의 크기가 예상과 다르게 나오는 경우는 이 단계에서의 오류 때문일 가능성이 큽니다.데이터 분리 정확성:
c_all_df.iloc[:line]과c_all_df.iloc[line:]로 데이터를 나누는데, 이 부분에서 올바르게 데이터를 분리하고 있는지 다시 확인해보시는 것이 좋습니다.
관련 질문과 유사한 문제를 다룬 자료도 참고하시면 도움이 될 것입니다. 아래의 링크에서 해결책을 찾으실 수 있습니다:
- 데이터 전처리와 원핫 인코딩 관련 논의
이 링크에서는 데이터 전처리 시 발생할 수 있는 문제와, 올바른 원핫 인코딩 사용 방법에 대한 답변들이 있습니다. 이를 참고하여 코드 구현을 개선하시면 좋을 것 같습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
수강 기간 연장 문의
0
10
1
수강연장 가능 문의 (기간 약 한달반)
0
37
2
수강기간 연장 가능할까요 선생님
0
54
2
Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.
0
33
3
수강연장요청 문의
0
75
2
아무래도 다음 시험 연장은 어렵겠죠?
0
91
2
빅분기 12회 결과 관련 문의
0
99
1
책이랑 강의랑 순서나 예제가 다른것 같네요
0
75
2
수강연장 문의
0
94
2
재검토 요청 방법 좀 알려주셔요...-.-;;
0
100
2
12회 실기 질문(작업형 2)
0
84
2
뒤로가기 버튼 같은 것이 있나요?
0
61
1
강의 연장 문의
0
91
2
출력값 질문
0
67
2
수업노트가 어디에 있나요?
0
56
1
실기시험 제출관련
0
221
3
6.20 작업형 2 과적합
0
227
3
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
83
2
로지스틱회귀, 회귀
0
75
2
회귀 문제를 풀때 질문입니다.
0
79
1
불균형 처리 후 성능이 더 낮아졌다면,
0
97
2
실기 체험 제2유형 에러 문의
0
90
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
75
2
3번문제 등분산 가정
0
75
2





