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

석구님의 프로필 이미지
석구

작성한 질문수

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

작업형2 모의문제2

작업형2 모의문제2 전처리

해결된 질문

작성

·

127

0

오브젝트 컬럼 전처리 시에

예를들어 test에는 있는데 train에는 없다면 데이터를 합쳐서 라벨 또는 원핫 인코딩 가능하다면

데이터를 합친다는거는 train데이터와 test데이터를 합치는 거는 data_all = pd.concat(train,test) 이런식으로 합치고 인코딩 후 나누면 되나요?? 합친 후 인코딩 후 소스가 궁금합니다.

 

추가로 위와 같은경우에 바로 라벨인코딩하면 에러나나요?

 

만약 neigbourhood 컬럼 test 값에 train에 포함되지 않은 값이 있다면.

답변 1

0

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

target = train.pop('Outcome')

타겟 컬럼은 우선 제외하고 합쳐서 인코딩한 후에 다시 나누면 됩니다.

print(train.shape, test.shape)
data = pd.concat([train, test], axis=0)
data_oh = pd.get_dummies(data)
train_oh = data_oh.iloc[:len(train)].copy()
test_oh = data_oh.iloc[len(train):].copy()
print(train_oh.shape, test_oh.shape)

 

석구님의 프로필 이미지
석구

작성한 질문수

질문하기