안녕하세요.
26년차 진로탐색꾼 조녁입니다!
1-4일차까지 파이썬 기본문법과 Pandas , numpy 에 대해 배웠었는데 해당내용은 지난 글들을 참고해주세요!
5일차부터는 지금까지 배웠던 기초들을 바탕으로 실제 예제에 적용해볼 예정입니다.
기초보다 좀 더 재밌는 내용들이니 기대해주세요~.
5일차 내용
1) 보스턴 집값 예측해보기
2)타이타닉호 생존자 예측해보기
1. 보스턴 집값 예측해보기
코드를 한줄씩 따라가보면서 해보는 거 추천드려요! train data 와 target data는 첨부했습니다!
복사하실 수 있도록 사진이 아닌 텍스트로 첨부합니다! (생색)
제가 적어놓은 순서대로 해보시고 모르는 거 있으시면 댓글에 질문 주세요. *저는 Colab으로 작성하였습니다.
#1. Import Libraries
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from google.colab import files
#2. Read Dataset
##2-1. Feature Data
upload = files.upload() # boston_house_data파일 첨부파일 확인
boston_house_data_df = pd.read.excel('boston_house_data.xlsx',index_col=0)
print(boston_house_data_df.shape)
boston_house_data_df.head(10)
##2-2. Target Data
target_boston_house_data_df = pd.read.excel('boston_house_target.xlsx',index_col=0)
print(target_boston_house_data_df)
target_boston_house_data_df.head(10)
##2-3. Concat Feature & Target DF
total_boston_house_data_df = pd.concat([boston_house_data_df,target_boston_house_data_df],axis=1)
print(total_boston_house_data_df.shape)
total_boston_house_data_df.head(10)
total_boston_house_data_df.columns = ['CRIM','ZN','INDUS','CHAS','NOX','RM','AGE','DIS','RAD','TAX','PTRATIO','B','LSTAT','MEDV']
total_boston_house_data_df.info()
#3. Convert DataFrame to Numpy array
feature_array = np.array(boston_house_data_df)
target_array = np.array(target_boston_house_data_df)
print(feature_array.ndim)
print(feature_array.shape)
print(target_array.ndim)
print(target_array.shape)
#4. Split into Training & Test set
boston_X = feature_array[:,12:13] ----> 여기서 어떤 열값으로할지는 여러분들의 선택입니다!!!
print(boston_X)
boston_Y = target_array
print(boston_Y)
from sklearn import model_selection
x_train, x_test, y_train, y_test = model.selection.train_test_split(boston_X,boston_Y, test_size = 0.3, random_state_42)
print(x_train.shape)
print(x_test.shape)
print(y_train.shape)
print(y_test.shape)
#5. Create Model Object
from sklearn import linear_model
model = linear_model.LinearRegression()
#6. Train Model Object
model.fit(x_train,y_train)
print('Coefficiennt:',model.coef_)
print('Intercept:',model.intercept_)
print(f'y={model.coef_}x+{model.intercept_}')
#7. Test Model Object
model.predict(x_train)
boston_Y
##7-1. MSE with Pure Python
print('MSE(training data):',np.mean((model.predict(x_train) - y_train)**2))
##7-2. MSE with Sklearn
from sklearn.metrics import mean_squared_error
print('MSE(training data):',mean_squared_error(model.predict(x_train),y_train))
#8. Visualization
%matplotlib inlines
plt.figure(figsize=(18,10))
plt.scatter(x_test,y_test,color = 'BLACK')
plt.scatter(t_train,y_train,color = 'RED', s=1)
plt.plot(x_test,model.predict(x_test), color='Blue')
plt.grid()
plt.show()
보스턴 집값문제는 데이터 마이닝에 있어서 가장 기본적인 예시 중 하나입니다!
저희는 오늘 머신러닝 패키지인 sklearn을 살짝 이용해봤는데, 선형회귀에 대한 수학적 지식이 없어도 그 값을 계산할 수 있었죠!!
제가 코드별로 설명을 넣지 않은 이유는, 코드를 치시다가 궁금한게 있으면 google에 해당 코드를 검색해보시면 설명이 나올거에요!
그걸 한번 이용해보시기 바라는 마음에 설명을 생략했습니다!! (그냥 귀찮은거 아니지?)그럼에도 궁금한 게 있으시다면 댓글에 남겨주세욥!!
읽어주셔서 감사합니다! 다들 즐거운 주말 보내세요~
'프로그래밍 공부 > 코드프레소 교육' 카테고리의 다른 글
[코드프레소XAI양재허브]AI/ML 기초교육 5일차 (2)_ 타이타닉 예측하기 (1) | 2021.01.12 |
---|---|
[코드프레소XAI양재허브] 인공지능 실무과정 2일차 (0) | 2020.12.08 |
[코드프레소XAI양재허브]AI/ML 기초교육 4일차 (2) (2) | 2020.12.04 |
[코드프레소XAI양재허브]AI/ML 기초교육 4일차 (1) (2) | 2020.12.03 |
[코드프레소XAI양재허브]AI/ML 기초교육 3일차 (2) | 2020.11.26 |