Python 튜토리얼

Lv4 전처리 6/9 python 파이썬 연속형 변수 변환 (1)

2021.08.12 15:56 3,644 조회

머신러닝 모델링을 하다 보면 제한된 변수로 성능을 끌어 올리는 데는 한계가 있습니다.  


실제 데이콘 대회 우승자 코드를 살펴보면,  전처리와 모델링은 크게 차이가 없습니다.

우승자들과 그 외 사람들을 비교해보면, 크게 다음 두 가지에서 큰 차이를 보입니다.


  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 : func(x))

------------------------------------------------------------------------------------------------------------------------------------


[Colab 실습 링크]


↩️ 오늘의 파이썬 리스트

#데이콘_101 #AI #머신러닝 #딥러닝 #파이썬 #파이선  #데이터분석 #데이터사이언티스트 #코랩 #Python  #colab #kaggle #pandas #numpy #sckit-learn # read_csv #스케일링 #MinMaxScailing

로그인이 필요합니다
0 / 1000
그린티
2021.09.12 13:40

done

다욤
2021.09.19 20:57

done

Holte
2021.10.07 18:07

왼쪽눈썹왁싱
2021.11.01 18:38

changhyeon
2021.12.29 17:36

done

moran
2022.01.03 16:42

dbnoid
2022.01.18 20:55

hijihyo
2022.01.25 18:16

acebed
2022.03.10 21:07

done

하랴랴
2022.03.22 17:03

done

kimgugu
2022.03.28 13:12

Kdata
2022.05.02 14:49

krooner
2022.05.19 22:13

khloee
2022.05.26 15:34

Y2J
2022.07.11 16:32

highllight
2023.02.02 15:44

김시옷
2023.05.28 15:25

done+