{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# 第6章『回帰分析』" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.101" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:29:26.133702Z", "start_time": "2019-04-14T17:29:25.326491Z" } }, "outputs": [], "source": [ "\"\"\" R自体に mtcarsというデータセットがビルトインされているが、Pythonではビルトインされていないので、今回はGithubに掲載されているmtcarsをインポートする。 \"\"\"\n", "\n", "import pandas as pd\n", "mtcars = pd.read_csv('https://gist.githubusercontent.com/ZeccaLehn/4e06d2575eb9589dbe8c365d61cb056c/raw/64f1660f38ef523b2a1a13be77b002b98665cdfe/mtcars.csv')" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:29:32.134619Z", "start_time": "2019-04-14T17:29:32.114802Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
Unnamed: 0mpgcyldisphpdratwtqsecvsamgearcarb
0Mazda RX421.06160.01103.902.62016.460144
1Mazda RX4 Wag21.06160.01103.902.87517.020144
2Datsun 71022.84108.0933.852.32018.611141
3Hornet 4 Drive21.46258.01103.083.21519.441031
4Hornet Sportabout18.78360.01753.153.44017.020032
\n", "
" ], "text/plain": [ " Unnamed: 0 mpg cyl disp hp drat wt qsec vs am gear \\\n", "0 Mazda RX4 21.0 6 160.0 110 3.90 2.620 16.46 0 1 4 \n", "1 Mazda RX4 Wag 21.0 6 160.0 110 3.90 2.875 17.02 0 1 4 \n", "2 Datsun 710 22.8 4 108.0 93 3.85 2.320 18.61 1 1 4 \n", "3 Hornet 4 Drive 21.4 6 258.0 110 3.08 3.215 19.44 1 0 3 \n", "4 Hornet Sportabout 18.7 8 360.0 175 3.15 3.440 17.02 0 0 3 \n", "\n", " carb \n", "0 4 \n", "1 4 \n", "2 1 \n", "3 1 \n", "4 2 " ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "mtcars.head()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.105" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:30:10.481879Z", "start_time": "2019-04-14T17:30:10.462697Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: mpg R-squared: 0.718
Model: OLS Adj. R-squared: 0.709
Method: Least Squares F-statistic: 76.51
Date: Sat, 25 Jan 2020 Prob (F-statistic): 9.38e-10
Time: 17:38:34 Log-Likelihood: -82.105
No. Observations: 32 AIC: 168.2
Df Residuals: 30 BIC: 171.1
Df Model: 1
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
Intercept 29.5999 1.230 24.070 0.000 27.088 32.111
disp -0.0412 0.005 -8.747 0.000 -0.051 -0.032
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 3.368 Durbin-Watson: 1.250
Prob(Omnibus): 0.186 Jarque-Bera (JB): 3.049
Skew: 0.719 Prob(JB): 0.218
Kurtosis: 2.532 Cond. No. 558.


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: mpg R-squared: 0.718\n", "Model: OLS Adj. R-squared: 0.709\n", "Method: Least Squares F-statistic: 76.51\n", "Date: Sat, 25 Jan 2020 Prob (F-statistic): 9.38e-10\n", "Time: 17:38:34 Log-Likelihood: -82.105\n", "No. Observations: 32 AIC: 168.2\n", "Df Residuals: 30 BIC: 171.1\n", "Df Model: 1 \n", "Covariance Type: nonrobust \n", "==============================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "------------------------------------------------------------------------------\n", "Intercept 29.5999 1.230 24.070 0.000 27.088 32.111\n", "disp -0.0412 0.005 -8.747 0.000 -0.051 -0.032\n", "==============================================================================\n", "Omnibus: 3.368 Durbin-Watson: 1.250\n", "Prob(Omnibus): 0.186 Jarque-Bera (JB): 3.049\n", "Skew: 0.719 Prob(JB): 0.218\n", "Kurtosis: 2.532 Cond. No. 558.\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "\"\"\"" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"\"\" Pythonでは、回帰分析の際には、sklearn.linear_model を利用する場合があるが、statmodelsの方が分析結果が一覧できる。 \"\"\"\n", "import statsmodels.formula.api as sm\n", "kaiki1 = sm.ols(formula='mpg ~ disp', data=mtcars)\n", "kaiki1_fitted = kaiki1.fit()\n", "kaiki1_fitted.summary()" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:30:13.360608Z", "start_time": "2019-04-14T17:30:13.355004Z" } }, "outputs": [ { "data": { "text/plain": [ "array([-4.89220065, -2.20219093, -0.96308564, 1.62715468, 7.23054027])" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import numpy as np\n", "np.quantile(kaiki1_fitted.resid, [0, 0.25, 0.5, 0.75, 1]) # 四分位を出力" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:30:15.651873Z", "start_time": "2019-04-14T17:30:15.231826Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "%matplotlib inline\n", "import seaborn as sns\n", "sns.regplot(x='disp', y='mpg', data=mtcars)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:30:39.105426Z", "start_time": "2019-04-14T17:30:39.097885Z" } }, "outputs": [ { "data": { "text/plain": [ "0 25.478343\n", "dtype: float64" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "kaiki1_fitted.predict(pd.DataFrame({\"disp\": [100]})) # dispの値が100の場合" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.108, 109" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:30:49.192222Z", "start_time": "2019-04-14T17:30:49.174576Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: mpg R-squared: 0.760
Model: OLS Adj. R-squared: 0.743
Method: Least Squares F-statistic: 45.81
Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09
Time: 17:38:34 Log-Likelihood: -79.573
No. Observations: 32 AIC: 165.1
Df Residuals: 29 BIC: 169.5
Df Model: 2
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
Intercept 34.6610 2.547 13.609 0.000 29.452 39.870
disp -0.0206 0.010 -2.007 0.054 -0.042 0.000
cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 3.200 Durbin-Watson: 1.596
Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660
Skew: 0.701 Prob(JB): 0.264
Kurtosis: 2.822 Cond. No. 1.27e+03


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
[2] The condition number is large, 1.27e+03. This might indicate that there are
strong multicollinearity or other numerical problems." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: mpg R-squared: 0.760\n", "Model: OLS Adj. R-squared: 0.743\n", "Method: Least Squares F-statistic: 45.81\n", "Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09\n", "Time: 17:38:34 Log-Likelihood: -79.573\n", "No. Observations: 32 AIC: 165.1\n", "Df Residuals: 29 BIC: 169.5\n", "Df Model: 2 \n", "Covariance Type: nonrobust \n", "==============================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "------------------------------------------------------------------------------\n", "Intercept 34.6610 2.547 13.609 0.000 29.452 39.870\n", "disp -0.0206 0.010 -2.007 0.054 -0.042 0.000\n", "cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131\n", "==============================================================================\n", "Omnibus: 3.200 Durbin-Watson: 1.596\n", "Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660\n", "Skew: 0.701 Prob(JB): 0.264\n", "Kurtosis: 2.822 Cond. No. 1.27e+03\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "[2] The condition number is large, 1.27e+03. This might indicate that there are\n", "strong multicollinearity or other numerical problems.\n", "\"\"\"" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import statsmodels.formula.api as sm\n", "kaiki2 = sm.ols(formula='mpg ~ disp + cyl', data=mtcars)\n", "kaiki2_fitted = kaiki2.fit()\n", "kaiki2_fitted.summary()" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:10.653356Z", "start_time": "2019-04-14T17:31:10.649514Z" } }, "outputs": [ { "data": { "text/plain": [ "array([-4.42126787, -2.17223578, -0.63623117, 1.18986716, 7.05160883])" ] }, "execution_count": 8, "metadata": {}, "output_type": "execute_result" } ], "source": [ "np.quantile(kaiki2_fitted.resid, [0, 0.25, 0.5, 0.75, 1]) # 四分位を出力" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:14.648738Z", "start_time": "2019-04-14T17:31:14.643629Z" } }, "outputs": [ { "data": { "text/plain": [ "0 21.843953\n", "1 21.843953\n", "2 26.088855\n", "3 19.826756\n", "4 14.552672\n", "5 20.506016\n", "6 14.552672\n", "7 25.292268\n", "8 25.413712\n", "9 21.687517\n", "10 21.687517\n", "11 16.285814\n", "12 16.285814\n", "13 16.285814\n", "14 12.247305\n", "15 12.494309\n", "16 12.905982\n", "17 26.691956\n", "18 26.753706\n", "19 26.848391\n", "20 25.839793\n", "21 15.417185\n", "22 15.705356\n", "23 14.758509\n", "24 13.729327\n", "25 26.685780\n", "26 25.835676\n", "27 26.354384\n", "28 14.737925\n", "29 22.152707\n", "30 15.767107\n", "31 25.821268\n", "dtype: float64" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "kaiki2_fitted.fittedvalues" ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:20.035211Z", "start_time": "2019-04-14T17:31:20.030244Z" } }, "outputs": [ { "data": { "text/plain": [ "0 -0.843953\n", "1 -0.843953\n", "2 -3.288855\n", "3 1.573244\n", "4 4.147328\n", "5 -2.406016\n", "6 -0.252672\n", "7 -0.892268\n", "8 -2.613712\n", "9 -2.487517\n", "10 -3.887517\n", "11 0.114186\n", "12 1.014186\n", "13 -1.085814\n", "14 -1.847305\n", "15 -2.094309\n", "16 1.794018\n", "17 5.708044\n", "18 3.646294\n", "19 7.051609\n", "20 -4.339793\n", "21 0.082815\n", "22 -0.505356\n", "23 -1.458509\n", "24 5.470673\n", "25 0.614220\n", "26 0.164324\n", "27 4.045616\n", "28 1.062075\n", "29 -2.452707\n", "30 -0.767107\n", "31 -4.421268\n", "dtype: float64" ] }, "execution_count": 10, "metadata": {}, "output_type": "execute_result" } ], "source": [ "kaiki2_fitted.resid" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:27.088215Z", "start_time": "2019-04-14T17:31:27.076591Z" } }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
mpgkaiki2_fitted
mpg1.0000000.871531
kaiki2_fitted0.8715311.000000
\n", "
" ], "text/plain": [ " mpg kaiki2_fitted\n", "mpg 1.000000 0.871531\n", "kaiki2_fitted 0.871531 1.000000" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.DataFrame({\n", " \"mpg\": mtcars[\"mpg\"], \n", " \"kaiki2_fitted\": kaiki2_fitted.fittedvalues\n", "}).corr()" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:32.369733Z", "start_time": "2019-04-14T17:31:32.257521Z" } }, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib\n", "%matplotlib inline\n", "matplotlib.pyplot.scatter(mtcars[\"mpg\"], kaiki2_fitted.fittedvalues)" ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:44.920485Z", "start_time": "2019-04-14T17:31:44.912208Z" } }, "outputs": [ { "data": { "text/plain": [ "0 15.78769\n", "dtype: float64" ] }, "execution_count": 13, "metadata": {}, "output_type": "execute_result" } ], "source": [ "kaiki2_fitted.predict(pd.DataFrame({\"disp\": [300.0,], \"cyl\": [8]})) # dispの値が300、cylが8の場合" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.112" ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:31:56.193866Z", "start_time": "2019-04-14T17:31:56.074711Z" } }, "outputs": [ { "data": { "text/plain": [ "(array([ 1., 10., 8., 5., 4., 1., 3.]),\n", " array([-6., -4., -2., 0., 2., 4., 6., 8.]),\n", " )" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib\n", "%matplotlib inline\n", "matplotlib.pyplot.hist(kaiki1_fitted.resid, range=(-6, 8), bins=7)" ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:32:02.589917Z", "start_time": "2019-04-14T17:32:02.475045Z" } }, "outputs": [ { "data": { "text/plain": [ "(array([2., 7., 9., 8., 1., 4., 1.]),\n", " array([-6., -4., -2., 0., 2., 4., 6., 8.]),\n", " )" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "
" ] }, "metadata": { "needs_background": "light" }, "output_type": "display_data" } ], "source": [ "import matplotlib\n", "%matplotlib inline\n", "# https://matplotlib.org/api/_as_gen/matplotlib.pyplot.hist.html\n", "matplotlib.pyplot.hist(kaiki2_fitted.resid, range=(-6, 8), bins=7)" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:32:07.769328Z", "start_time": "2019-04-14T17:32:07.757032Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: mpg R-squared: 0.760
Model: OLS Adj. R-squared: 0.743
Method: Least Squares F-statistic: 45.81
Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09
Time: 17:38:35 Log-Likelihood: -79.573
No. Observations: 32 AIC: 165.1
Df Residuals: 29 BIC: 169.5
Df Model: 2
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
Intercept 34.6610 2.547 13.609 0.000 29.452 39.870
disp -0.0206 0.010 -2.007 0.054 -0.042 0.000
cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 3.200 Durbin-Watson: 1.596
Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660
Skew: 0.701 Prob(JB): 0.264
Kurtosis: 2.822 Cond. No. 1.27e+03


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
[2] The condition number is large, 1.27e+03. This might indicate that there are
strong multicollinearity or other numerical problems." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: mpg R-squared: 0.760\n", "Model: OLS Adj. R-squared: 0.743\n", "Method: Least Squares F-statistic: 45.81\n", "Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09\n", "Time: 17:38:35 Log-Likelihood: -79.573\n", "No. Observations: 32 AIC: 165.1\n", "Df Residuals: 29 BIC: 169.5\n", "Df Model: 2 \n", "Covariance Type: nonrobust \n", "==============================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "------------------------------------------------------------------------------\n", "Intercept 34.6610 2.547 13.609 0.000 29.452 39.870\n", "disp -0.0206 0.010 -2.007 0.054 -0.042 0.000\n", "cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131\n", "==============================================================================\n", "Omnibus: 3.200 Durbin-Watson: 1.596\n", "Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660\n", "Skew: 0.701 Prob(JB): 0.264\n", "Kurtosis: 2.822 Cond. No. 1.27e+03\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "[2] The condition number is large, 1.27e+03. This might indicate that there are\n", "strong multicollinearity or other numerical problems.\n", "\"\"\"" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "kaiki2_fitted.summary()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.115" ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:32:22.555002Z", "start_time": "2019-04-14T17:32:22.543133Z" } }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
OLS Regression Results
Dep. Variable: mpg R-squared: 0.760
Model: OLS Adj. R-squared: 0.743
Method: Least Squares F-statistic: 45.81
Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09
Time: 17:38:35 Log-Likelihood: -79.573
No. Observations: 32 AIC: 165.1
Df Residuals: 29 BIC: 169.5
Df Model: 2
Covariance Type: nonrobust
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
coef std err t P>|t| [0.025 0.975]
Intercept 34.6610 2.547 13.609 0.000 29.452 39.870
disp -0.0206 0.010 -2.007 0.054 -0.042 0.000
cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131
\n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "\n", " \n", "\n", "
Omnibus: 3.200 Durbin-Watson: 1.596
Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660
Skew: 0.701 Prob(JB): 0.264
Kurtosis: 2.822 Cond. No. 1.27e+03


Warnings:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
[2] The condition number is large, 1.27e+03. This might indicate that there are
strong multicollinearity or other numerical problems." ], "text/plain": [ "\n", "\"\"\"\n", " OLS Regression Results \n", "==============================================================================\n", "Dep. Variable: mpg R-squared: 0.760\n", "Model: OLS Adj. R-squared: 0.743\n", "Method: Least Squares F-statistic: 45.81\n", "Date: Sat, 25 Jan 2020 Prob (F-statistic): 1.06e-09\n", "Time: 17:38:35 Log-Likelihood: -79.573\n", "No. Observations: 32 AIC: 165.1\n", "Df Residuals: 29 BIC: 169.5\n", "Df Model: 2 \n", "Covariance Type: nonrobust \n", "==============================================================================\n", " coef std err t P>|t| [0.025 0.975]\n", "------------------------------------------------------------------------------\n", "Intercept 34.6610 2.547 13.609 0.000 29.452 39.870\n", "disp -0.0206 0.010 -2.007 0.054 -0.042 0.000\n", "cyl -1.5873 0.712 -2.230 0.034 -3.043 -0.131\n", "==============================================================================\n", "Omnibus: 3.200 Durbin-Watson: 1.596\n", "Prob(Omnibus): 0.202 Jarque-Bera (JB): 2.660\n", "Skew: 0.701 Prob(JB): 0.264\n", "Kurtosis: 2.822 Cond. No. 1.27e+03\n", "==============================================================================\n", "\n", "Warnings:\n", "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n", "[2] The condition number is large, 1.27e+03. This might indicate that there are\n", "strong multicollinearity or other numerical problems.\n", "\"\"\"" ] }, "execution_count": 17, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\"\"\" Pythonでは statmodelsのsummary()で95%信頼区間もt値も一括で出力される。 \"\"\"\n", "kaiki2_fitted.summary()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## p.122, 123" ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "ExecuteTime": { "end_time": "2019-04-14T17:32:37.159914Z", "start_time": "2019-04-14T17:32:37.156370Z" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "168.2093890987089\n", "165.14563701576952\n" ] } ], "source": [ "\"\"\" Pythonでは statmodelsのsummary()でAICの値も他の情報とともに一括で出力される。 \"\"\"\n", "print(kaiki1_fitted.aic) # AICの値のみを取り出す\n", "print(kaiki2_fitted.aic) # AICの値のみを取り出す" ] } ], "metadata": { "hide_input": false, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.7.6" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": false, "sideBar": true, "skip_h1_title": false, "title_cell": "Table of Contents", "title_sidebar": "Contents", "toc_cell": true, "toc_position": {}, "toc_section_display": true, "toc_window_display": true } }, "nbformat": 4, "nbformat_minor": 2 }