inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

피처 엔지니어링

데이터 합치기

137

작성자 없음

작성한 질문수 0

0

 

image.png

 

(29304, 15), (3257, 15)로 나오는데요

강의랑 달라서 뭐가 잘못된 건지 여쭤봅니다.

 

(29304, 15) , (3257, 15)

(29304, 99), (29304, 99)로 나오는데요

강의랑 달라서 뭐가 잘못된 건지 여쭤봅니다.

 

 

 

 

 

python 머신러닝 빅데이터 pandas 빅데이터분석기사

답변 2

0

퇴근후딴짓

코드를 확인해보니

다시 분리할때 train과 test를 구분해서 나누는 것이 아니리 똑같은 코드를 적용했네요

iloc를 다시 한번 확인부탁드려요

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다. p0qmp0q님, 질문해 주신 내용에 대해 도와드리겠습니다.

질문하신 내용을 보면, 데이터 전처리 과정에서 traintest 데이터 세트를 합쳐서 인코딩한 후 분리하는 과정에서 발생한 문제인 것으로 보입니다. 주로 이러한 문제는 One-Hot Encoding을 수행할 때 traintest 데이터의 범주형 변수들이 다르게 인코딩되어 발생합니다. 이러한 상황에서는 pd.get_dummies() 함수를 사용하는 과정에서 열의 수가 일치하지 않아 두 데이터 프레임의 최종 열의 수가 다르게 나타날 수 있습니다.

이 문제를 해결하기 위한 몇 가지 방법을 제안드립니다:

  1. 데이터 병합 및 인코딩 후 분리: traintest 데이터 세트를 먼저 병합한 후 One-Hot Encoding을 적용하면, 두 데이터 세트에 동일한 범주형 컬럼들이 일관되게 인코딩됩니다. 이를 통해 traintest 데이터 세트의 컬럼 수를 일관되게 유지할 수 있습니다. 병합한 데이터를 pd.get_dummies()로 인코딩한 후, 다시 원래의 traintest로 분리하는 방식이 올바른 접근입니다.

  2. missing columns 처리: train 또는 test 데이터셋에 특정 열이 존재하지 않는 경우가 있습니다. 이 경우, 생성된 데이터 프레임(train 또는 test)에서 해당 열을 추가하고 0으로 값을 채워 일관성을 유지할 수 있습니다. 예를 들어,

    missing_cols = set(train.columns) - set(test.columns)
    for col in missing_cols:
       test[col] = 0
    test = test[train.columns]
    

질문 주신 내용을 참고하면, 아마도 범주형 데이터가 One-Hot Encoding 과정에서 다르게 처리되어 열의 수에 차이가 발생한 것으로 보입니다. 위의 방법들을 통해 데이터 프레임의 열 수를 일관되게 조정하면 문제를 해결할 수 있을 것입니다.

관련하여 도움이 될 수 있는 답변 URL을 안내드립니다:

이 게시물들은 데이터 전처리, 데이터 병합 및 분리에 대한 자세한 설명을 제공하며, 유사한 문제를 해결한 사례를 포함하고 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

라벨인코딩 방식

0

4

1

test 재학습 관련

0

5

1

target 빈도 확인

0

7

1

작업형 2 연습문제 섹션 6

0

4

1

F1-score

0

8

1

작업형 2번 섹션 3

0

9

1

작업형 2 인코딩, 결측치, 모델 선택 질문

0

11

0

인코딩 방식 문의

0

12

1

9회 3유형 ==> 7회 3유형 질문드려요

0

7

1

작업형 2관련 질문입니다

0

11

2

작업형2 카테고리

0

19

2

110강 회귀_8번 문의

0

11

2

XGBRegressor 학습 시 warning 출력

0

20

2

데이터 프레임을 변경해도 되나요?

0

11

2

10회 기출 작업형3 문제 2-1 질문

0

18

2

작업형 2 질문

0

18

2

작업형 2 템플릿 확인 요청

0

17

2

작업형2 인코딩 질문

0

23

2

작업형 3 벼락치기 공부방법 질문

0

32

2

기출 11회 작업형 2_전체 데이터 학습 여부

0

33

2

예측값 결과 소수점 차이

0

28

2

기출 문제와 실전챌린지 연습문제 무엇부터 푸는게 나은가요?

0

37

1

전처리 train() test([ ])

0

23

2

작업형 1 배경지식 질문

0

33

2