드레:
코딩 뿌시기
드레:
전체 방문자
오늘
어제
  • 분류 전체보기 (268)
    • Python (74)
      • Python 기초 (42)
      • Numpy (8)
      • Pandas (22)
    • Machine Learning (31)
      • Machine Learning (1)
      • Deep Learning (27)
    • AWS (22)
      • RDS (3)
      • EC2 (9)
      • Lambda (8)
      • S3 (2)
    • MySQL (24)
    • Git (8)
    • Streamlit (12)
    • REST API (22)
    • Java (24)
    • Android (36)
    • Debugging (15)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • Transfer Learning
  • EC2
  • serverless
  • CNN
  • volley
  • github
  • JWT
  • GET
  • 네이버 API
  • AWS
  • Java
  • 안드로이드 스튜디오
  • Lambda
  • Python
  • fine tuning
  • Streamlit
  • rest api
  • flask
  • pandas
  • tensorflow
  • Ann
  • Retrofit2
  • 깃이그노어
  • 딥러닝
  • 서버리스
  • aws s3
  • AWS Lambda
  • API
  • Callback
  • 액션바

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
드레:

코딩 뿌시기

데이터 전처리 - 결측값 처리, 피처 스케일링, train_test_split
Machine Learning

데이터 전처리 - 결측값 처리, 피처 스케일링, train_test_split

2022. 12. 5. 22:32

 

df

 

NaN 처리

 

import pandas as pd

# 결측값 확인
df.isna().sum()
>>> Country      0
    Age          1
    Salary       1
    Purchased    0
    dtype: int64

# 1. 삭제 전략
df.dropna()

 

# 2. 채우는 전략
df.fillna(df.mean(numeric_only=True))

 

 

 

Feature Scaling

 

하나의 변수는 오차가 크고, 하나의 변수는 오차가 작으면, 나중에 오차를 수정할 때 편중된다.

따라서 값의 범위를 맞춰줘야 정확히 트레이닝 된다.

주로 표준화와 정규화를 사용한다.

 

 

from sklearn.preprocessing import StandardScaler, MinMaxScaler

 

1. 표준화(Standardization)

 

값의 범위를 평균이 0, 분산이 1인 정규분포를 따르는 값으로 변환

s_scaler_x = StandardScaler()   # 표준화 인스턴스 호출
X = s_scaler_x.fit_transform(X) # X를 표준화하고 저장

 

 

2. 정규화(Normalization)

 

값의 범위를 0~1사이로 변환

 

m_scaler_x = MinMaxScaler()      # 최대최소 정규화 인스턴스 생성
X = m_scaler_x.fit_transform(X)  # X를 최대최소 정규화하고 저장

 

 

 

 

train_test_split

 

  • 데이터들을 학습용(Training)과 테스트용(Test)으로 분리
  • X_train, X_test, y_train, y_test = train_test_split( 데이터X, 데이터y, test_size= 0~1 , random_state= n )
    • 데이터 X : 학습시킬 데이터
    • 데이터 y : 학습시킬 데이터와 연관되있는 결과 값(레이블)
    • test_size : 테스트에 사용될 자원. 0.0부터 1.0사이여야하며 기본 값은 0.25(25%)
    • train_size = 학습에 사용될 자원, test_size를 지정해주면 남는 자원을 학습에 사용
    • random_state : 분할을 적용하기 전에 데이터에 적용되는 난수를 제어. (seed와 동일)
from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=3)

'Machine Learning' 카테고리의 다른 글

머신러닝 - Linear Regression 으로 수치 예측  (0) 2022.12.07
데이터 전처리 - Categorical Encoding  (0) 2022.12.05
    'Machine Learning' 카테고리의 다른 글
    • 머신러닝 - Linear Regression 으로 수치 예측
    • 데이터 전처리 - Categorical Encoding
    드레:
    드레:

    티스토리툴바