skew값이 음수인 feature와 pandas의 get_dummies에 대한 질문입니다.
485
작성한 질문수 77
안녕하세요! 질 좋은 강의에 항상 감사인사 드립니다. 두 가지 질문만 드리겠습니다.
1. 중간에 feature별 skewness 수치를 보고 편향된 분포의 feature들을 log변환 해줄 때 skewness값이 1보다 큰 값의 feature들에만 log를 취하셨는데 skewness값이 음수일 때(왼쪽으로 늘어진 꼬리형태의 분포)의 feature값들은 일부러 log처리를 하시지 않으신건가요?(즉, skewness값이 음수일 때의 feature도 고려하지 않은 것에 대한 이유가 있을까요?!)
2. pandas의 get_dummies를 이용해서 원-핫 인코딩을 하셨는데, get_dummies함수 인자에 원-핫 인코딩할 변수명을 지정안해주신 걸로 보아서는 get_dummies함수가 알아서 각 변수마다 수치형/범주형 변수인지 확인하고 범주형 변수를 선택해 원-핫 인코딩해주는 것 같습니다..(만약 아니라면 말씀해주십시오 ㅜㅜ) 그렇다면 get_dummies인자에 원-핫 인코딩할 변수들을 사전에 지정해준다면 코드가 동작할 때 계산되는 연산량이나 메모리를 좀 줄일 수 있는 방안이 될까요!?
#예를 들어, pd.get_dummies(columns=['변수1','변수2']) 이런식으로요!
감사합니다.
답변 2
1
안녕하십니까,
1. 보통 업무적인 데이터의 skew는 오른쪽(positive) long tail이 많습니다. 그리고 log transformation은 오른쪽 long tail 일때만 적용합니다. 만약 원본 값에 - 값이 있다면 log의 정의로 인하여 log값으로 변환할 수 없습니다.
left skew인 경우는 업무적으로 그렇게 많지 않지만 이를 보정할 방법도 효율적이진 않습니다. 보통 제곱 변환(square transformation)을 하지만 그렇게 효율적인 방법은 아닙니다. 때문에 보통 left skew는 잘 변환하지 않습니다.
2. 네 맞습니다. pandas의 get_dummies() 자동으로 object 대상 컬럼만 원-핫 인코딩해줍니다. 원-핫 인코딩 대상을 줄여주는 경우가 아니라면 변수를 사전에 지정해 준다고 내부 로직에서 얼마나 메모리/시간을 절약해줄지는 의문입니다. 코드 작성의 명확성을 위해서 변수를 사전에 지정해 주면 좋을 것 같습니다.
감사합니다.
안녕하세요 열심히 수강중인 학생입니다
0
61
2
정수 인덱싱
0
68
2
넘파이 오류
0
85
2
11강 numpy의 axis 축 질문 드립니다.
0
85
2
Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.
0
79
2
Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.
0
70
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
75
2
타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.
0
64
2
5강 강의 오류가 있어요.
0
84
1
실무에서 LTV 관련 모델 선택 질문입니다!
0
72
2
14강 강의 듣는중에 궁금한게 있어서 질문합니다~
0
69
3
파이썬 다운그레이 후 사이킷런 재설치
0
117
2
좋은 강의 감사합니다.
0
72
2
scoring 함수 음수값
0
67
2
6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?
0
100
2
분류 평가 정확도 예측
0
76
2
안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.
0
98
1
카카오톡 채널 있나요
0
107
1
혹시 강의에서 사용하시는 ppt 받을 수 있는건가요
0
189
2
pca 스케일링 관련하여 질문드립니다.
0
100
2
주피터 대신 구글 코랩
0
172
2
강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?
0
147
2
실루엣 스코어..
0
86
2
float64 null 값 처리 방법
0
102
2





