타입별 컬럼 처리하는 코드

newbieski·2023년 4월 6일
0

머신러닝

목록 보기
10/14

pandas 객체에서 타입별로 컬럼을 추출해서 처리하는 코드가 마음에 들어서 가져옴

코드

numeric_cols = [cname for cname in X_train_full.columns if X_train_full[cname].dtype in ['int64', 'float64']]
low_cardinality_cols = [cname for cname in X_train_full.columns if X_train_full[cname].nunique() < 10 and 
                        X_train_full[cname].dtype == "object"]
my_cols = low_cardinality_cols + numeric_cols
X_train = X_train_full[my_cols].copy()
  • X_train_full은 pandas 객체
  • 숫자 컬럼을 추출
  • 숫자가 아닌데, 값의 가지수가 10개 미만인 컬럼 추출
  • 이런 컬럼들만 다룰꺼야

숫자 컬럼 구하기

  • cname으로 배열을 만들꺼야
  • cname은 X_train_full에 있는 컬럼들이야
  • 그런데 조건이 있어. cname 컬럼의 데이터 타입이 ['int64', 'float64'] 이 안에 있어야해

low_cardinality

  • cname으로 배열을 만들꺼야
  • cname은 X_train_full에 있는 컬럼들이야
  • 그런데 조건이 있어. cname 컬럼의 nunique() < 10 이어야하고, 데이터 타입은 object 여야해

추출

  • 숫자컬럼이랑 low_cardinality 컬럼을 합쳤어
  • 합친 컬럼만 복사해서 X_train을 만들꺼야
profile
newbieski

0개의 댓글