1,495 바이트 추가됨
, 2022년 8월 3일 (수) 16:55
== 개요 ==
pandas를 활용하여 특성을 다루는 방법에 대해 다룬 문서.
= 시작하기 전에 =
{| class="wikitable"
!전략
!설명
!예시
|-
|칼럼별 값 파악
|특정 칼럼에 어떤 값들이 몇 개 있는지 알려준다. ex) 학생 20, 선생 10, 민간인 5, ....
|df['칼럼'].value_counts()
|}
= 다양한 전략 =
== 매핑 ==
컴퓨터는 단어를 인식하지 못하므로 단어를 벡터화 해주어야 한다.<syntaxhighlight lang="python">
mapping = {"male": 0, "female": 1} # 매핑 데이터를 사전으로 정의한다.
for df in train_df: # train_df 안에 있는 df들 전체에 대한 매핑을 수행한다.
df['sex'] = df['sex'].map(mapping)
</syntaxhighlight>
=== 스케일링 ===
매핑을 할 때엔 가능하면 0~1 사이의 값을 갖게 하는 편이 좋다.(0, 1의 매핑보다 0~10의 매핑에서 input 값이 크기 때문에 더 중요한 특성이라 판단하고 만다.)
== 비닝 ==
binning. 특정 데이터를 가진 값들을 범주화 한다.
논리연산을 이용하여 해당 필터에 걸리는 것들에 값을 부여한다.(예컨대 사람을 나이가 아니라 청소년, 청년, 노인으로 구분할 때.)<syntaxhighlight lang="python">
for df in train_df: # train_df 안에 있는 df들 전체에 대한 매핑을 수행한다.
df.loc[dataset['행1'] < 5, '행1'] = 0,
df.loc[ (dataset['행1'] >= 5) & (dataset['행1'] >= 15), '행1'] = 1,
....
</syntaxhighlight>
[[분류:특성공학]]