pd.get_dummies(train[cols])와 (train, columns=cols) 차이가 궁금합니다.
원핫 인코딩 코드에서 괄호 안에 [cols]를 쓸 때와 columns=cols를 쓸 때의 차이가 궁금합니다.
3-4 Feature engineering에서와 3-6 Regression에서 작성법이 달라서요.
3-6 Regression에서는 train[cols]로 썼더니 에러가 나네요ㅠ
# 3-4 Feature engineering
c_train[col] = le.fit_transform(c_train[col])
c_test[col] = le.transform(c_test[col])
# 3-6 Regression
train = pd.get_dummies(train, columns=cols)
test = pd.get_dummies(test, columns=cols)
답변 1
1
데이터 전처리에서는 회귀와 분류가 차이가 나지 않습니다.
c_train[col] = le.fit_transform(c_train[col])위 코드를 자세히 보면 변환 후 대입받는 c_train[col] 도 컬럼을 똑같이 지정하고 있어요 스케일링은 컬럼의 변화가 없어요
그런데 원핫인코딩은 결과가 컬럼의 수가 치이가 납니다. 많이 늘어나게 되죠!
따라서 아래와 같은 방식으로 사용하면 자동으로 object자료형만 변환해서 전체 데이터를 다시 test에 저장해주고
test = pd.get_dummies(test)컬럼을 지정하면 지정된 컬럼만 변환하고 전체 데이터를 반환해 줍니다.
test = pd.get_dummies(test, columns=cols)결과 전 후를 print()으로 출력해보길 권장합니다.
train[cols]에서 에러가 난 것은 추측 컨데 대입받을 때도train[cols]를 사용한 것이 아닌가 싶어요
0
자세하게 설명해주셔서 잘 이해되었습니다! 🙂
마지막 설명에서 pd.get_dummies(test)가 자동으로 object 자료형만 변환해서 전체 데이터를 저장하는 것이라면,
cols가 object 자료형으로 지정된 상태에서는
test = pd.get_dummies(test)
test = pd.get_dummies(test, columns=cols)
위 두 코드의 결과가 같은 것이죠?
직접 해보니 출력 결과가 같은데 제가 이해한 것이 맞는지 확인 부탁드립니다!

뒤로가기 버튼 같은 것이 있나요?
0
22
1
강의 연장 문의
0
23
1
출력값 질문
0
28
2
수업노트가 어디에 있나요?
0
28
1
실기시험 제출관련
0
159
2
6.20 작업형 2 과적합
0
165
3
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
51
2
로지스틱회귀, 회귀
0
51
2
회귀 문제를 풀때 질문입니다.
0
58
1
불균형 처리 후 성능이 더 낮아졌다면,
0
65
2
실기 체험 제2유형 에러 문의
0
65
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
51
2
3번문제 등분산 가정
0
49
2
작업형3 target 형 변환 질문
0
37
2
[작업형1] 연습문제 섹션1 ~ 10 의 section4
0
39
3
원핫인코딩과 레이블 인코딩에서 concat
0
60
2
제2유형 질문입니다.
0
48
2
C()
0
44
2
작업형 2에서 strafity 적용 유무
0
52
2
수강 기간 연장 가능 여부 문의드립니다.
0
61
1
ols
0
44
2
2유형 작성관련 질문(일반 심화)
0
40
2
2유형 작성관련 질문
0
41
2
2유형 object컬럼 개수 다르면
0
48
2





