인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

김동현님의 프로필 이미지
김동현

작성한 질문수

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

예시문제 작업형2(신 버전)

작업형 2유형 원핫 인코딩 수행 후

해결된 질문

작성

·

170

·

수정됨

0

  • 작업형 2유형 원핫인코딩 수행 후 훈련 데이터와 테스트데이터의 컬럼수가 안맞아서 컬럼 갯수가 적은 데이터 기준으로 컬럼 순서와 갯수를 맞춰주고 모델을 학습시키는데 상관 없을까요??(분류문제)

답변 3

1

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

문제는 없을 것 같아요.

다만 이방식으로 했을 때 만약에 중요 피처(원핫인코딩 후 특정 카테고리)가 삭제된다면? 이란 생각이 드네요~

 

import pandas as pd

# 예제 데이터프레임 생성
df = pd.DataFrame({
    'A': [1, 2, 3],
    'B': [4, 5, 6],
    'C': [7, 8, 9]
})

dftest = pd.DataFrame({
    'B': [10, 11, 12],
    'C': [13, 14, 15],
    'D': [16, 17, 18]
})

# 두 데이터프레임의 컬럼 교집합을 구함
common_columns = df.columns.intersection(dftest.columns)

# 교집합에 해당하는 컬럼만 선택하여 데이터프레임 재구성
df = df[common_columns]
dftest = dftest[common_columns]

print("df:")
print(df)
print("dftest:")
print(dftest)

결과

프로세스가 시작되었습니다.(입력값을 직접 입력해 주세요)
> df:
   B  C
0  4  7
1  5  8
2  6  9
dftest:
    B   C
0  10  13
1  11  14
2  12  15

프로세스가 종료되었습니다.

0

김동현님의 프로필 이미지
김동현
질문자

cond = df.columns.intersection(dftest.columns)

df = df[cond]

dftest = dftest[cond]

print(df.shape, dftest.shape)

위 코드로 보통 수행합니다

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

동현님이 맞춘다는 것이 어떤 방식으로 맞추는 것일까요?

코드로 보여주실 수 있을까요?

김동현님의 프로필 이미지
김동현

작성한 질문수

질문하기