Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 플로우 방법
- 내 장점 찾기
- 강점 5가지
- 맥 받아쓰기
- MBA 비용
- 글로벌 MBA
- 자신에게 할 질문
- 30대 필독서
- 장점 5가지
- 20살 추천 도서
- 자기계발서 추천
- 받아쓰기 설정
- 몰입 책 후기
- 온라인 파트타임 MBA
- 몰입 줄거리
- 내 강점
- 책 추천
- 오디오 텍스트 변환
- 목적 찾는 법
- 자산 책 추천
- 30살 추천 도서
- 블랙쉽
- mac 받아쓰기 설정
- 돈의 속성이란
- 자산늘리는법
- 청소년 추천 도서
- 몰입하는 방법
- 강자의 언어
- 글로벌 MBA 비용
- 30대 필독
Archives
- Today
- Total
Let's enjoy our life
더미변수 전환, 전환 되돌리기 파이썬 코드 (Dummy variable Python code) 본문
가변수(Dummy variable, 假變數)란 독립변수를 0과1로 변환한 변수를 의미한다.
일반적인 경우 그 사실 여부에 대해 예/아니오로 확인 가능한 질적 변수(예: 남자인가? 대학교를 졸업했는가?)는 회귀 분석에 직접 투입하는 것이 불가능하다. 이러한 질적 변수를 회귀분석에 사용하기 위해 그 가부를 0 혹은 1 의 숫자 형태로 대응시킨 변수를 가변수라 한다.
범주형 데이터의 정의¶
범주형 데이터는 ‘A’, ‘B’, ‘C’와 같이 종류를 표시하는 데이터를 말한다. 카테고리(category( 데이터라고도 부른다. 다음과 같은 데이터는 모두 범주형 데이터의 예다.
-
성별: 남자, 여자
-
혈액형: A, B, O, AB
-
이름: 홍길동, 성춘향, …
-
주소: 서울, 부산, 대전, …
반드시 문자만 범주형 데이터인 것은 아다. 예를 들어 소속을 나타내는 ‘1반’, ‘2반’, ‘3반’과 같은 데이터는 숫자로 표현된 값이지만 ‘1’이라는 글자를 이용한 것 뿐이지 숫자로서의 의미는 없다. 즉, ‘2’라는 값이 ‘1’이라는 값보다 2배 더 크다는 뜻이 아니므로 이 경우는 범주형 값으로 보아야 한다.
범주형 데이터의 변형¶
대부분의 데이터 분석 모형은 숫자만 입력으로 받을 수 있기 때문에 범주형 데이터는 숫자로 변환해야 한다. 범주형 데이터를 숫자로 변환하는 방법은 두가지다.
-
더미변수화
-
카테고리 임베딩
더미변수화¶
**더미변수(dummy variable)**는 0 또는 1만 가지는 값으로 어떤 특징이 존재하는가 존재하지 않는가를 표시한다. 다음과 같은 명칭으로도 불린다.
더미변수 전환
def get_dummies(df,dummy_list):
if not dummy_list:
return df
else:
df_ = pd.get_dummies(data=df, columns=dummy_list)
return df_
더미변수 전환 되돌리기
def undummify(df, prefix_sep="_"):
cols2collapse = {
item.split(prefix_sep)[0]: (prefix_sep in item) for item in df.columns
}
series_list = []
for col, needs_to_collapse in cols2collapse.items():
if needs_to_collapse:
undummified = (
df.filter(like=col)
.idxmax(axis=1)
.apply(lambda x: x.split(prefix_sep, maxsplit=1)[1])
.rename(col)
)
series_list.append(undummified)
else:
series_list.append(df[col])
undummified_df = pd.concat(series_list, axis=1)
return undummified_df
참고
'Study > Python' 카테고리의 다른 글
Comments