본문 바로가기

인공지능/데이터 전처리5

[데이터 전처리] 데이터 불균형 맞추기 SMOTE() 📝데이터 불균형 맞추기 from imblearn.over_sampling import SMOTE ※ 라이브러리 설치 안되어 있을 경우 pip install 검색 (https://pypi.org/project/imblearn/) SMOTE() # 변수에 저장하여 사용 sm = SMOTE(random_state=2) X, y = sm.fit_resample(X, y) 2022. 12. 2.
[데이터 전처리] Training/Test용 데이터 나누기 train_test_split() 📝트레이닝용(학습용)과 테스트용 데이터 나누기 from sklearn.model_selection import train_test_split train_test_split() : 데이터셋을 학습용과 테스트용으로 나눠준다 train_test_split(X, y, test_size= 0.2, random_state=3) # test_size= 0.2 테스트에 20% 사용하겠다 # 각 변수에 저장(순서대로 입력) X_train, X_test, y_train, y_test = train_test_split(X, y, test_size= 0.2, random_state=3) 2022. 12. 1.
[데이터 전처리] 데이터 정규화, 표준화 Feature Scaling 📝데이터 범위 맞추기 피처스케일링 학습시킬때 값의 레인지를 맞춰줘야 정확히 트레이닝 된다 from sklearn.preprocessing import StandardScaler, MinMaxScaler StandardScaler() : 데이터 표준화 # 변수에 저장해서 사용 >>> s_scaler_x = StandardScaler() >>> s_scaler_x.fit_transform(X) MinMaxScaler() : 데이터 정규화(값이 0과 1사이로 나옴) # 변수에 저장해서 사용 >>> m_scaler_x = MinMaxScaler() >>> m_scaler_x.fit_transform(X) 2022. 12. 1.
[데이터 전처리] 데이터 레이블 인코딩, 원핫 인코딩 하기 LabelEncoder(), OneHotEncoder() 📝데이터 레이블 인코딩, 원핫 인코딩하기 데이터를 학습하기 위해서는 방정식에 대입되어야 하는데 방정식은 수학식이므로 데이터는 모두 숫자로 되어 있어야 한다 따라서 문자열 데이터를 숫자로 바꿔줘야 한다 그 작업을 레이블 인코딩이라고 한다 import numpy as np import matplotlib.pyplot as plt import pandas as pd from sklearn.preprocessing import LabelEncoder, OneHotEncoder from sklearn.compose import ColumnTransformer LabelEncoder() : 문자열 데이터를 정렬해서 순서대로 0부터 시작하는 숫자로 바꿔준다 ※ 카테고리컬 데이터의 갯수가 3개 이상일 때는 Label .. 2022. 12. 1.
[데이터 전처리] 인공지능 만들기 전 준비과정 데이터 전처리하기 📝인공지능 만들기 전 데이터 처리하기 import numpy as np import matplotlib.pyplot as plt import pandas as pd from imblearn.over_sampling import SMOTE from sklearn.preprocessing import StandardScaler, MinMaxScaler from sklearn.model_selection import train_test_split 1. pd 데이터 가져오기 2. 0이나 다른 데이터로 채워져 있는 값 nan으로 변환 3. 비어있는 데이터 확인(있으면 삭제하거나 채우기) 4. 예측할 컬럼을 y, 예측을 위해 필요한 데이터 X로 지정 5. 문자열 데이터가 있을경우 레이블 인코딩(또는 원핫)으로 문자.. 2022. 11. 30.