# -*- coding: utf-8 -*-
"""
Created on Wed Nov 24 13:00:29 2021

@author: Sim
"""
import numpy as np
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols

iq = np.array([100 ,123 ,132,  98 ,105 ,110 ,117 , 95, 127 ,135])
vt =np.array([89 , 93 , 97,  80 , 83 , 88 , 90 , 70, 93 , 97])

#----------- statsmodels ols -----------------

df = pd.DataFrame({'iq': iq, 'vt': vt})
lm1 = ols('iq~vt', data=df).fit()
print(lm1.summary())
aovtable = sm.stats.anova_lm(lm1)
print(aovtable)
print('F-값: ', lm1.fvalue)

resid1 = lm1.resid
print('잔차: ',resid1)
SSE = sum(resid1 **2)
print('SSE:', SSE)
yhat11 = lm1.fittedvalues
print('예측값: ', yhat11)
yhat12 = lm1.predict(pd.DataFrame({'vt': [85,95]}))
print('예측값 2: ', yhat12)

SSR = sum((yhat11-np.mean(iq))**2)

