분류 전체보기
-
다중회귀모델 예제(degree)Python 데이터 분석 2022. 11. 17. 12:34
# 회귀분석 : 선형회귀, 다항회귀 import pandas as pd import numpy as np from sklearn.preprocessing import PolynomialFeatures from sklearn.linear_model import LinearRegression from sklearn.metrics import r2_score import matplotlib.pyplot as plt plt.rc('font', family = 'malgun gothic') df = pd.read_csv('../testdata/housing.data', header = None, sep = '\s+') # sep = 공백으로 구분 df.columns = ['CRIM','ZN','INDUS','CH..
-
Python 데이터분석 기초 53 - 다항회귀모델, 차원확대, 차원축소Python 데이터 분석 2022. 11. 17. 11:34
상관계수는 충분히 있지만, 데이터가 선형이 아닌, 비선형 데이터일 경우 선형회귀모델을 다항회귀모델로 변환한다. # 선형회귀모델을 다항회귀모델로 변환 # 선형 가정이 신뢰도가 떨어질 경우 대처방법으로 다항식을 추가할 수 있다. import numpy as np import matplotlib.pyplot as plt x = np.array([1, 2, 3, 4, 5]) y = np.array([4, 2, 1, 3, 7]) print(np.corrcoef(x, y)) # 0.48076197 # plt.scatter(x, y) # plt.show() # 선형회귀모델 작성 from sklearn.linear_model import LinearRegression x = x[:, np.newaxis] # 차원확대 ..
-
Python 데이터분석 기초 52 - 설명력이 매우 높을 때 Ridge 회귀모형, Lasso 회귀모형, Elastic Net 회귀모형을 사용Python 데이터 분석 2022. 11. 17. 11:05
정규화(regularized) 선형회귀 방법은 선형회귀 계수(weight)에 대한 제약 조건을 추가함으로써 모형이 과도하게 최적화되는 현상, 즉 과최적화를 막는 방법이다. Regularized Method, Penalized Method, Contrained Least Squares 이라고도 불리운다. 모형이 과도하게 최적화되면 모형 계수의 크기도 과도하게 증가하는 경향이 나타난다. 따라서 정규화 방법에서 추가하는 제약 조건은 일반적으로 계수의 크기를 제한하는 방법이다. 일반적으로 다음과 같은 세가지 방법이 사용된다. Ridge 회귀모형 Lasso 회귀모형 Elastic Net 회귀모형 출처 6.5 정규화 선형회귀 — 데이터 사이언스 스쿨 .ipynb .pdf to have style consistenc..
-
선형회귀분석 모델 LinearRegression을 사용 예제(train_test_split) mtcars 데이터 사용Python 데이터 분석 2022. 11. 16. 16:23
# LinearRegression으로 선형회귀모델을 작성 - mtcars dataset을 사용 import statsmodels.api from sklearn.linear_model import LinearRegression import numpy as np import matplotlib.pyplot as plt from sklearn.metrics import r2_score, mean_squared_error mtcars = statsmodels.api.datasets.get_rdataset('mtcars').data print(mtcars.head(3)) print(mtcars.corr(method = 'pearson')) # hp가 mpg에 영향을 준다 라는 가정하에 모델을 생성 # r(상관계수..
-
선형회귀분석 모델 LinearRegression을 사용 예제(train_test_split)Python 데이터 분석 2022. 11. 16. 16:06
import numpy as np import pandas as pd from sklearn.preprocessing import MinMaxScaler # 정규화 지원 from sklearn.metrics import r2_score, explained_variance_score, mean_squared_error from sklearn.linear_model import LinearRegression import matplotlib.pyplot as plt import seaborn as sns from sklearn.model_selection import train_test_split # sklearn에는 독립변수가 백터가 아닌 matrix로 넣어진다. # 공부시간에 따른 시험 점수 예측모델 df..
-
Python 데이터분석 기초 51 - 선형회귀분석 모델 LinearRegression을 사용 - summary() 함수 지원 XPython 데이터 분석 2022. 11. 16. 14:51
LinearRegression에는 summary() 함수가 없으므로 설명력을 확인하려면 r2_score()함수를 이용한다. sklearn에는 독립변수가 백터가 아닌 matrix로 넣어진다. # 선형회귀분석모델 작성시 LinearRegression을 사용 - summary() 함수 지원 X # 선형회귀분석모델을 평가할 수 있는 score 알아보기 import numpy as np import pandas as pd from sklearn.preprocessing import MinMaxScaler # 정규화 지원 from sklearn.metrics import r2_score, explained_variance_score, mean_squared_error from sklearn.linear_model ..
-
회귀분석모형의 적절성을 위한 5가지 조건 예제Python 데이터 분석 2022. 11. 16. 12:31
# 회귀분석 문제 3) # kaggle.com에서 carseats.csv 파일을 다운 받아 (https://github.com/pykwon 에도 있음) # Sales 변수에 영향을 주는 변수들을 선택하여 선형회귀분석을 실시한다. # 변수 선택은 모델.summary() 함수를 활용하여 타당한 변수만 임의적으로 선택한다. # 회귀분석모형의 적절성을 위한 조건도 체크하시오. # 완성된 모델로 Sales를 예측. import numpy as np import pandas as pd import matplotlib.pyplot as plt import statsmodels.api plt.rc('font', family = 'malgun gothic') import seaborn as sns import stats..