단순 선형 회귀 분석하기 - 데이터 전 처리
기계학습 라이브러리 scikit-learn 을 사용하면 Loss 함수를 최솟값으로 만드는 β0\beta_0, β1\beta_1 을 쉽게 구할 수 있습니다.
주어진 데이터를 sklearn에서 불러 올 선형 모델에 적용하기 위해서는 전 처리가 필요합니다.
이번 실습에서는 sklearn에서 제공하는 LinearRegression을 사용하기 위한 데이터 전 처리를 수행해보겠습니다.
sklearn의 LinearRegression 입력 값 형태
LinearRegression 모델의 입력값으로는 Pandas의 DataFrame의 feature (X) 데이터와 Series 형태의 label (Y) 데이터를 입력 받을 수 있습니다.
X, Y의 샘플의 개수는 같아야 합니다.
지시사항
- X 데이터를 column 명이 X인 DataFrame으로 변환하고 train_X에 저장합니다.
- 리스트 Y를 Series 형식으로 변환하여 train_Y에 저장합니다.
import pandas as pd
from sklearn.linear_model import LinearRegression
X = [8.70153760, 3.90825773, 1.89362433, 3.28730045, 7.39333004, 2.98984649, 2.25757240, 9.84450732, 9.94589513, 5.48321616]
Y = [5.64413093, 3.75876583, 3.87233310, 4.40990425, 6.43845020, 4.02827829, 2.26105955, 7.15768995, 6.29097441, 5.19692852]
"""
1. X의 형태를 변환하여 train_X에 저장합니다.
"""
train_X = pd.DataFrame(X, columns=['X']) # X를 column 명이 'X'인 Dataframe으로 변환합니다.
"""
2. Y의 형태를 변환하여 train_Y에 저장합니다.
"""
train_Y = pd.Series(Y) # Y를 Series로 변환합니다.
# 변환된 데이터를 출력합니다.
print('전 처리한 X 데이터: \n {}'.format(train_X))
print('전 처리한 X 데이터 shape: {}\n'.format(train_X.shape))
print('전 처리한 Y 데이터: \n {}'.format(train_Y))
print('전 처리한 Y 데이터 shape: {}'.format(train_Y.shape))
'ML' 카테고리의 다른 글
단순 선형 회귀 분석하기 - 예측하기 (0) | 2022.11.23 |
---|---|
단순 선형 회귀 분석하기 (0) | 2022.11.23 |
데이터분리하기 train_test_split (0) | 2022.11.22 |
이상치 처리하기 (0) | 2022.11.22 |
수치형 자료 변환하기 - 표준화 (0) | 2022.11.22 |