320x100
320x100
머신러닝 모델링을 하다 보면 제한된 변수로 성능을 끌어 올리는 데는 한계가 있다.
실제 데이콘 대회 우승자 코드를 살펴보면, 전처리와 모델링은 크게 차이가 없다.
우승자들과 그 외 사람들을 비교해보면, 크게 다음 두 가지에서 큰 차이를 보인다.
1. 어떻게 데이터를 증강시켰는지?
2. 어떤 파생 변수를 추가하였는지 ?
특히 정형 데이터의 경우 데이터 증강은 제한적입니다.
그래서 더욱더 효율적인 파생 변수를 추가하는 것이 중요하다.
오늘은 가장 간단하게 파생 변수를 추가할 수 있는 방법인 연속형 변수를 범주형 변수로 변환시켜보겠다.
연속형 변수를 범주형 변수로 변환 시키는 방법은 여러가지가 있겠지만, 크게 2가지에 대해서 알아보도록 하겠다.
1. 수치 범위 구간을 직접 지정해 레이블링 하기.
2. 판다스의 cut() 함수로 레이블링 하기.
# train 데이터의 pH 변수를 구간이 4개인 범주형 변수로 변환
# pH < 1 -> lowest
# 1<= pH < 2 -> low
# 2 <= pH < 3-> normal
# 3 <= pH -> high
def func(x):
if x<3:
return 'lowest'
elif x<3.3:
return 'low'
elif x<3.5:
return 'normal'
else:
return 'high'
train['pH'] = train['pH'].apply(lambda x:funx(x))
320x100
320x100
'빅데이터 관련 자료 > Dacon' 카테고리의 다른 글
Lv4 | 전처리 | Polynomial Features (1) (0) | 2021.09.10 |
---|---|
Lv4 | 전처리 | 연속형 변수 변환 (2) (0) | 2021.09.09 |
Lv4 | 전처리 | 다중공선성 해결 - PCA (3) (0) | 2021.09.07 |
Lv4 | 전처리 | 다중공선성 해결 - PCA (2) (0) | 2021.09.06 |
Lv4 | 전처리 | 다중공선성 해결 - PCA (1) (0) | 2021.09.05 |