{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# possible answers: by using a simulated data"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 48,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt\n",
    "import sklearn\n",
    "%matplotlib inline\n",
    "from sklearn import preprocessing\n",
    "import statsmodels.api as sm\n",
    "import statsmodels.formula.api as smf\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn import datasets, linear_model\n",
    "from sklearn.metrics import mean_squared_error\n",
    "from math import sqrt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 49,
   "metadata": {},
   "outputs": [],
   "source": [
    "df = pd.DataFrame(np.random.randn(100, 4), columns=list('ABCD'))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 71,
   "metadata": {},
   "outputs": [],
   "source": [
    "# let's create price using bottom Formula\n",
    "df['price'] = 1.2 + 0.9*df['A'] -0.65*df['B']+1.3*df['C'] - 0.005*df['D']"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 72,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "      <th>price</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.021937</td>\n",
       "      <td>-0.100397</td>\n",
       "      <td>1.984511</td>\n",
       "      <td>0.213921</td>\n",
       "      <td>3.824309</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-1.368836</td>\n",
       "      <td>-0.076158</td>\n",
       "      <td>0.073464</td>\n",
       "      <td>-0.778512</td>\n",
       "      <td>0.116946</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.360144</td>\n",
       "      <td>1.518440</td>\n",
       "      <td>-0.696123</td>\n",
       "      <td>2.020400</td>\n",
       "      <td>-1.026177</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-1.373076</td>\n",
       "      <td>-0.914809</td>\n",
       "      <td>-0.056573</td>\n",
       "      <td>-0.349655</td>\n",
       "      <td>0.487062</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-2.071789</td>\n",
       "      <td>-0.914867</td>\n",
       "      <td>0.095365</td>\n",
       "      <td>0.023687</td>\n",
       "      <td>0.053910</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.729684</td>\n",
       "      <td>-1.283658</td>\n",
       "      <td>-0.240843</td>\n",
       "      <td>0.000130</td>\n",
       "      <td>1.064565</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.656033</td>\n",
       "      <td>-0.274848</td>\n",
       "      <td>-0.140122</td>\n",
       "      <td>-0.183422</td>\n",
       "      <td>1.787839</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1.522235</td>\n",
       "      <td>0.445835</td>\n",
       "      <td>1.419923</td>\n",
       "      <td>-1.310535</td>\n",
       "      <td>4.132671</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.435067</td>\n",
       "      <td>1.533551</td>\n",
       "      <td>-0.399575</td>\n",
       "      <td>-0.115183</td>\n",
       "      <td>-0.707240</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>-1.303630</td>\n",
       "      <td>-0.083242</td>\n",
       "      <td>-0.737467</td>\n",
       "      <td>1.112737</td>\n",
       "      <td>-0.883430</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.312381</td>\n",
       "      <td>0.100176</td>\n",
       "      <td>-1.265782</td>\n",
       "      <td>0.920646</td>\n",
       "      <td>-0.796377</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>-0.600540</td>\n",
       "      <td>-1.843646</td>\n",
       "      <td>-1.007009</td>\n",
       "      <td>0.263897</td>\n",
       "      <td>0.547453</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>-1.247347</td>\n",
       "      <td>-0.538036</td>\n",
       "      <td>0.554012</td>\n",
       "      <td>-0.179333</td>\n",
       "      <td>1.148224</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.304908</td>\n",
       "      <td>0.465905</td>\n",
       "      <td>1.028977</td>\n",
       "      <td>-0.479015</td>\n",
       "      <td>1.962810</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-1.372086</td>\n",
       "      <td>-0.034792</td>\n",
       "      <td>-0.397105</td>\n",
       "      <td>0.752937</td>\n",
       "      <td>-0.532263</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>-1.291205</td>\n",
       "      <td>1.111686</td>\n",
       "      <td>2.301056</td>\n",
       "      <td>1.197768</td>\n",
       "      <td>2.300703</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>1.382821</td>\n",
       "      <td>-0.757679</td>\n",
       "      <td>0.915031</td>\n",
       "      <td>0.460536</td>\n",
       "      <td>4.124268</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>0.752628</td>\n",
       "      <td>0.147682</td>\n",
       "      <td>-0.039853</td>\n",
       "      <td>-1.169933</td>\n",
       "      <td>1.735412</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>-1.503112</td>\n",
       "      <td>2.104730</td>\n",
       "      <td>0.852029</td>\n",
       "      <td>-0.527086</td>\n",
       "      <td>-0.410602</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0.823447</td>\n",
       "      <td>-0.716972</td>\n",
       "      <td>1.158881</td>\n",
       "      <td>-1.077544</td>\n",
       "      <td>3.919068</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>-1.981152</td>\n",
       "      <td>1.175003</td>\n",
       "      <td>-0.103182</td>\n",
       "      <td>-0.803696</td>\n",
       "      <td>-1.476907</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>0.183096</td>\n",
       "      <td>1.722185</td>\n",
       "      <td>0.179174</td>\n",
       "      <td>0.853651</td>\n",
       "      <td>0.474024</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>-0.731301</td>\n",
       "      <td>-0.084400</td>\n",
       "      <td>-0.806253</td>\n",
       "      <td>-0.039106</td>\n",
       "      <td>-0.451244</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>-1.191344</td>\n",
       "      <td>-0.102634</td>\n",
       "      <td>1.147617</td>\n",
       "      <td>1.803176</td>\n",
       "      <td>1.677389</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>1.149366</td>\n",
       "      <td>-0.701682</td>\n",
       "      <td>1.656113</td>\n",
       "      <td>-0.895813</td>\n",
       "      <td>4.847950</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>0.255767</td>\n",
       "      <td>1.411510</td>\n",
       "      <td>-0.775058</td>\n",
       "      <td>-1.640088</td>\n",
       "      <td>-0.486666</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>1.743477</td>\n",
       "      <td>0.329918</td>\n",
       "      <td>-0.930375</td>\n",
       "      <td>-1.445340</td>\n",
       "      <td>1.352422</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>0.149855</td>\n",
       "      <td>0.361067</td>\n",
       "      <td>-0.997539</td>\n",
       "      <td>0.370896</td>\n",
       "      <td>-0.198479</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>-1.321996</td>\n",
       "      <td>-0.204088</td>\n",
       "      <td>1.960891</td>\n",
       "      <td>0.621032</td>\n",
       "      <td>2.688913</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>0.506742</td>\n",
       "      <td>0.542671</td>\n",
       "      <td>1.492694</td>\n",
       "      <td>-0.138300</td>\n",
       "      <td>3.244526</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>70</th>\n",
       "      <td>0.698686</td>\n",
       "      <td>0.208087</td>\n",
       "      <td>-0.741195</td>\n",
       "      <td>1.168971</td>\n",
       "      <td>0.724162</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>71</th>\n",
       "      <td>0.655061</td>\n",
       "      <td>1.035662</td>\n",
       "      <td>-0.361544</td>\n",
       "      <td>-0.699626</td>\n",
       "      <td>0.649865</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>72</th>\n",
       "      <td>0.553661</td>\n",
       "      <td>-0.934191</td>\n",
       "      <td>1.276112</td>\n",
       "      <td>1.131555</td>\n",
       "      <td>3.958807</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>73</th>\n",
       "      <td>-1.098543</td>\n",
       "      <td>0.444533</td>\n",
       "      <td>-0.429944</td>\n",
       "      <td>0.230867</td>\n",
       "      <td>-0.637716</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>74</th>\n",
       "      <td>-0.313472</td>\n",
       "      <td>0.206591</td>\n",
       "      <td>0.046462</td>\n",
       "      <td>0.594055</td>\n",
       "      <td>0.841021</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75</th>\n",
       "      <td>0.058683</td>\n",
       "      <td>0.453302</td>\n",
       "      <td>-0.534330</td>\n",
       "      <td>-0.976968</td>\n",
       "      <td>0.268424</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>76</th>\n",
       "      <td>-0.459692</td>\n",
       "      <td>-0.694857</td>\n",
       "      <td>1.602756</td>\n",
       "      <td>-0.253766</td>\n",
       "      <td>3.322785</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>77</th>\n",
       "      <td>1.636040</td>\n",
       "      <td>-0.302870</td>\n",
       "      <td>-0.873280</td>\n",
       "      <td>0.985314</td>\n",
       "      <td>1.729111</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>78</th>\n",
       "      <td>-0.800163</td>\n",
       "      <td>1.996436</td>\n",
       "      <td>0.346315</td>\n",
       "      <td>0.779894</td>\n",
       "      <td>-0.371520</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>79</th>\n",
       "      <td>1.054663</td>\n",
       "      <td>-0.549331</td>\n",
       "      <td>0.057519</td>\n",
       "      <td>-0.359649</td>\n",
       "      <td>2.582834</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>80</th>\n",
       "      <td>-0.590245</td>\n",
       "      <td>0.357098</td>\n",
       "      <td>1.408215</td>\n",
       "      <td>-2.651084</td>\n",
       "      <td>2.280601</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>81</th>\n",
       "      <td>-0.209329</td>\n",
       "      <td>0.309613</td>\n",
       "      <td>-0.467170</td>\n",
       "      <td>-1.004442</td>\n",
       "      <td>0.208057</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>82</th>\n",
       "      <td>-0.796418</td>\n",
       "      <td>-0.171097</td>\n",
       "      <td>-0.474186</td>\n",
       "      <td>-0.518603</td>\n",
       "      <td>-0.019412</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>83</th>\n",
       "      <td>0.174656</td>\n",
       "      <td>-0.239616</td>\n",
       "      <td>-0.580832</td>\n",
       "      <td>0.823082</td>\n",
       "      <td>0.753743</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>84</th>\n",
       "      <td>-0.115301</td>\n",
       "      <td>-0.243070</td>\n",
       "      <td>-1.131473</td>\n",
       "      <td>-0.744156</td>\n",
       "      <td>-0.212971</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>85</th>\n",
       "      <td>-0.709806</td>\n",
       "      <td>0.001458</td>\n",
       "      <td>-1.143499</td>\n",
       "      <td>-0.556965</td>\n",
       "      <td>-0.923536</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>86</th>\n",
       "      <td>-0.887743</td>\n",
       "      <td>0.233384</td>\n",
       "      <td>-0.167223</td>\n",
       "      <td>0.634569</td>\n",
       "      <td>0.028769</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>87</th>\n",
       "      <td>0.272266</td>\n",
       "      <td>0.936495</td>\n",
       "      <td>-0.429674</td>\n",
       "      <td>1.169981</td>\n",
       "      <td>0.271892</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>88</th>\n",
       "      <td>-0.893427</td>\n",
       "      <td>-0.616628</td>\n",
       "      <td>-0.369113</td>\n",
       "      <td>-1.227798</td>\n",
       "      <td>0.323016</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>89</th>\n",
       "      <td>-1.560717</td>\n",
       "      <td>0.723461</td>\n",
       "      <td>-1.347243</td>\n",
       "      <td>1.085556</td>\n",
       "      <td>-2.431740</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>90</th>\n",
       "      <td>-1.018544</td>\n",
       "      <td>0.409384</td>\n",
       "      <td>-0.504430</td>\n",
       "      <td>-0.863217</td>\n",
       "      <td>-0.634232</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>91</th>\n",
       "      <td>0.797354</td>\n",
       "      <td>0.026396</td>\n",
       "      <td>0.861932</td>\n",
       "      <td>-1.698798</td>\n",
       "      <td>3.029467</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>92</th>\n",
       "      <td>0.390725</td>\n",
       "      <td>-1.315061</td>\n",
       "      <td>0.998194</td>\n",
       "      <td>-0.252419</td>\n",
       "      <td>3.705357</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>93</th>\n",
       "      <td>0.934899</td>\n",
       "      <td>0.451582</td>\n",
       "      <td>-0.624819</td>\n",
       "      <td>-0.166434</td>\n",
       "      <td>0.936448</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>94</th>\n",
       "      <td>0.077069</td>\n",
       "      <td>-1.404201</td>\n",
       "      <td>-0.058979</td>\n",
       "      <td>1.492244</td>\n",
       "      <td>2.097959</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>95</th>\n",
       "      <td>-1.301706</td>\n",
       "      <td>-0.793837</td>\n",
       "      <td>-2.199206</td>\n",
       "      <td>2.358733</td>\n",
       "      <td>-2.326303</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>96</th>\n",
       "      <td>0.329054</td>\n",
       "      <td>-0.658375</td>\n",
       "      <td>-0.318347</td>\n",
       "      <td>-1.099189</td>\n",
       "      <td>1.515737</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>97</th>\n",
       "      <td>0.079746</td>\n",
       "      <td>-2.727208</td>\n",
       "      <td>1.096066</td>\n",
       "      <td>-0.989539</td>\n",
       "      <td>4.474290</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>98</th>\n",
       "      <td>-0.801635</td>\n",
       "      <td>0.202078</td>\n",
       "      <td>-0.531896</td>\n",
       "      <td>-0.056664</td>\n",
       "      <td>-0.344004</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99</th>\n",
       "      <td>0.263765</td>\n",
       "      <td>-0.765085</td>\n",
       "      <td>2.445064</td>\n",
       "      <td>-0.082818</td>\n",
       "      <td>5.113692</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>100 rows × 5 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           A         B         C         D     price\n",
       "0  -0.021937 -0.100397  1.984511  0.213921  3.824309\n",
       "1  -1.368836 -0.076158  0.073464 -0.778512  0.116946\n",
       "2  -0.360144  1.518440 -0.696123  2.020400 -1.026177\n",
       "3  -1.373076 -0.914809 -0.056573 -0.349655  0.487062\n",
       "4  -2.071789 -0.914867  0.095365  0.023687  0.053910\n",
       "5  -0.729684 -1.283658 -0.240843  0.000130  1.064565\n",
       "6   0.656033 -0.274848 -0.140122 -0.183422  1.787839\n",
       "7   1.522235  0.445835  1.419923 -1.310535  4.132671\n",
       "8  -0.435067  1.533551 -0.399575 -0.115183 -0.707240\n",
       "9  -1.303630 -0.083242 -0.737467  1.112737 -0.883430\n",
       "10 -0.312381  0.100176 -1.265782  0.920646 -0.796377\n",
       "11 -0.600540 -1.843646 -1.007009  0.263897  0.547453\n",
       "12 -1.247347 -0.538036  0.554012 -0.179333  1.148224\n",
       "13 -0.304908  0.465905  1.028977 -0.479015  1.962810\n",
       "14 -1.372086 -0.034792 -0.397105  0.752937 -0.532263\n",
       "15 -1.291205  1.111686  2.301056  1.197768  2.300703\n",
       "16  1.382821 -0.757679  0.915031  0.460536  4.124268\n",
       "17  0.752628  0.147682 -0.039853 -1.169933  1.735412\n",
       "18 -1.503112  2.104730  0.852029 -0.527086 -0.410602\n",
       "19  0.823447 -0.716972  1.158881 -1.077544  3.919068\n",
       "20 -1.981152  1.175003 -0.103182 -0.803696 -1.476907\n",
       "21  0.183096  1.722185  0.179174  0.853651  0.474024\n",
       "22 -0.731301 -0.084400 -0.806253 -0.039106 -0.451244\n",
       "23 -1.191344 -0.102634  1.147617  1.803176  1.677389\n",
       "24  1.149366 -0.701682  1.656113 -0.895813  4.847950\n",
       "25  0.255767  1.411510 -0.775058 -1.640088 -0.486666\n",
       "26  1.743477  0.329918 -0.930375 -1.445340  1.352422\n",
       "27  0.149855  0.361067 -0.997539  0.370896 -0.198479\n",
       "28 -1.321996 -0.204088  1.960891  0.621032  2.688913\n",
       "29  0.506742  0.542671  1.492694 -0.138300  3.244526\n",
       "..       ...       ...       ...       ...       ...\n",
       "70  0.698686  0.208087 -0.741195  1.168971  0.724162\n",
       "71  0.655061  1.035662 -0.361544 -0.699626  0.649865\n",
       "72  0.553661 -0.934191  1.276112  1.131555  3.958807\n",
       "73 -1.098543  0.444533 -0.429944  0.230867 -0.637716\n",
       "74 -0.313472  0.206591  0.046462  0.594055  0.841021\n",
       "75  0.058683  0.453302 -0.534330 -0.976968  0.268424\n",
       "76 -0.459692 -0.694857  1.602756 -0.253766  3.322785\n",
       "77  1.636040 -0.302870 -0.873280  0.985314  1.729111\n",
       "78 -0.800163  1.996436  0.346315  0.779894 -0.371520\n",
       "79  1.054663 -0.549331  0.057519 -0.359649  2.582834\n",
       "80 -0.590245  0.357098  1.408215 -2.651084  2.280601\n",
       "81 -0.209329  0.309613 -0.467170 -1.004442  0.208057\n",
       "82 -0.796418 -0.171097 -0.474186 -0.518603 -0.019412\n",
       "83  0.174656 -0.239616 -0.580832  0.823082  0.753743\n",
       "84 -0.115301 -0.243070 -1.131473 -0.744156 -0.212971\n",
       "85 -0.709806  0.001458 -1.143499 -0.556965 -0.923536\n",
       "86 -0.887743  0.233384 -0.167223  0.634569  0.028769\n",
       "87  0.272266  0.936495 -0.429674  1.169981  0.271892\n",
       "88 -0.893427 -0.616628 -0.369113 -1.227798  0.323016\n",
       "89 -1.560717  0.723461 -1.347243  1.085556 -2.431740\n",
       "90 -1.018544  0.409384 -0.504430 -0.863217 -0.634232\n",
       "91  0.797354  0.026396  0.861932 -1.698798  3.029467\n",
       "92  0.390725 -1.315061  0.998194 -0.252419  3.705357\n",
       "93  0.934899  0.451582 -0.624819 -0.166434  0.936448\n",
       "94  0.077069 -1.404201 -0.058979  1.492244  2.097959\n",
       "95 -1.301706 -0.793837 -2.199206  2.358733 -2.326303\n",
       "96  0.329054 -0.658375 -0.318347 -1.099189  1.515737\n",
       "97  0.079746 -2.727208  1.096066 -0.989539  4.474290\n",
       "98 -0.801635  0.202078 -0.531896 -0.056664 -0.344004\n",
       "99  0.263765 -0.765085  2.445064 -0.082818  5.113692\n",
       "\n",
       "[100 rows x 5 columns]"
      ]
     },
     "execution_count": 72,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 52,
   "metadata": {},
   "outputs": [],
   "source": [
    "df_scale = pd.DataFrame(sklearn.preprocessing.scale(df[['A','B','C','D']],axis=0, with_mean=True, with_std=True), columns=list('ABCD'))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 53,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>-0.008310</td>\n",
       "      <td>-0.053624</td>\n",
       "      <td>1.798396</td>\n",
       "      <td>0.138595</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-1.344304</td>\n",
       "      <td>-0.028952</td>\n",
       "      <td>-0.076123</td>\n",
       "      <td>-0.829270</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>-0.343778</td>\n",
       "      <td>1.594140</td>\n",
       "      <td>-0.831001</td>\n",
       "      <td>1.900353</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-1.348509</td>\n",
       "      <td>-0.882588</td>\n",
       "      <td>-0.203674</td>\n",
       "      <td>-0.411030</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-2.041566</td>\n",
       "      <td>-0.882647</td>\n",
       "      <td>-0.054641</td>\n",
       "      <td>-0.046930</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.710327</td>\n",
       "      <td>-1.258028</td>\n",
       "      <td>-0.384423</td>\n",
       "      <td>-0.069904</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>0.664171</td>\n",
       "      <td>-0.231192</td>\n",
       "      <td>-0.285627</td>\n",
       "      <td>-0.248912</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>1.523360</td>\n",
       "      <td>0.502369</td>\n",
       "      <td>1.244600</td>\n",
       "      <td>-1.348122</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.418095</td>\n",
       "      <td>1.609521</td>\n",
       "      <td>-0.540121</td>\n",
       "      <td>-0.182362</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>-1.279626</td>\n",
       "      <td>-0.036162</td>\n",
       "      <td>-0.871554</td>\n",
       "      <td>1.015160</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.296402</td>\n",
       "      <td>0.150533</td>\n",
       "      <td>-1.389771</td>\n",
       "      <td>0.827824</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>-0.582228</td>\n",
       "      <td>-1.828023</td>\n",
       "      <td>-1.135944</td>\n",
       "      <td>0.187333</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>-1.223798</td>\n",
       "      <td>-0.499083</td>\n",
       "      <td>0.395239</td>\n",
       "      <td>-0.244925</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.288990</td>\n",
       "      <td>0.522798</td>\n",
       "      <td>0.861126</td>\n",
       "      <td>-0.537187</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-1.347528</td>\n",
       "      <td>0.013153</td>\n",
       "      <td>-0.537698</td>\n",
       "      <td>0.664267</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>-1.267301</td>\n",
       "      <td>1.180118</td>\n",
       "      <td>2.108890</td>\n",
       "      <td>1.098086</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>1.385075</td>\n",
       "      <td>-0.722651</td>\n",
       "      <td>0.749358</td>\n",
       "      <td>0.379104</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>0.759984</td>\n",
       "      <td>0.198888</td>\n",
       "      <td>-0.187275</td>\n",
       "      <td>-1.211001</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>-1.477493</td>\n",
       "      <td>2.190906</td>\n",
       "      <td>0.687560</td>\n",
       "      <td>-0.584069</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0.830230</td>\n",
       "      <td>-0.681216</td>\n",
       "      <td>0.988547</td>\n",
       "      <td>-1.120900</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>-1.951663</td>\n",
       "      <td>1.244566</td>\n",
       "      <td>-0.249393</td>\n",
       "      <td>-0.853830</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>0.195063</td>\n",
       "      <td>1.801525</td>\n",
       "      <td>0.027566</td>\n",
       "      <td>0.762488</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>-0.711930</td>\n",
       "      <td>-0.037341</td>\n",
       "      <td>-0.939025</td>\n",
       "      <td>-0.108168</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>-1.168249</td>\n",
       "      <td>-0.055901</td>\n",
       "      <td>0.977498</td>\n",
       "      <td>1.688507</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>1.153510</td>\n",
       "      <td>-0.665653</td>\n",
       "      <td>1.476275</td>\n",
       "      <td>-0.943668</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>0.267146</td>\n",
       "      <td>1.485300</td>\n",
       "      <td>-0.908427</td>\n",
       "      <td>-1.669518</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>1.742811</td>\n",
       "      <td>0.384381</td>\n",
       "      <td>-1.060775</td>\n",
       "      <td>-1.479590</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>27</th>\n",
       "      <td>0.162092</td>\n",
       "      <td>0.416086</td>\n",
       "      <td>-1.126656</td>\n",
       "      <td>0.291683</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>-1.297844</td>\n",
       "      <td>-0.159167</td>\n",
       "      <td>1.775227</td>\n",
       "      <td>0.535627</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>29</th>\n",
       "      <td>0.516089</td>\n",
       "      <td>0.600935</td>\n",
       "      <td>1.315980</td>\n",
       "      <td>-0.204907</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>70</th>\n",
       "      <td>0.706478</td>\n",
       "      <td>0.260372</td>\n",
       "      <td>-0.875211</td>\n",
       "      <td>1.070002</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>71</th>\n",
       "      <td>0.663207</td>\n",
       "      <td>1.102736</td>\n",
       "      <td>-0.502816</td>\n",
       "      <td>-0.752337</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>72</th>\n",
       "      <td>0.562628</td>\n",
       "      <td>-0.902316</td>\n",
       "      <td>1.103537</td>\n",
       "      <td>1.033512</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>73</th>\n",
       "      <td>-1.076199</td>\n",
       "      <td>0.501043</td>\n",
       "      <td>-0.569909</td>\n",
       "      <td>0.155121</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>74</th>\n",
       "      <td>-0.297485</td>\n",
       "      <td>0.258850</td>\n",
       "      <td>-0.102610</td>\n",
       "      <td>0.509318</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>75</th>\n",
       "      <td>0.071658</td>\n",
       "      <td>0.509969</td>\n",
       "      <td>-0.672300</td>\n",
       "      <td>-1.022813</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>76</th>\n",
       "      <td>-0.442521</td>\n",
       "      <td>-0.658706</td>\n",
       "      <td>1.423937</td>\n",
       "      <td>-0.317515</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>77</th>\n",
       "      <td>1.636244</td>\n",
       "      <td>-0.259715</td>\n",
       "      <td>-1.004771</td>\n",
       "      <td>0.890891</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>78</th>\n",
       "      <td>-0.780235</td>\n",
       "      <td>2.080677</td>\n",
       "      <td>0.191512</td>\n",
       "      <td>0.690557</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>79</th>\n",
       "      <td>1.059573</td>\n",
       "      <td>-0.510580</td>\n",
       "      <td>-0.091764</td>\n",
       "      <td>-0.420776</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>80</th>\n",
       "      <td>-0.572016</td>\n",
       "      <td>0.412046</td>\n",
       "      <td>1.233115</td>\n",
       "      <td>-2.655485</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>81</th>\n",
       "      <td>-0.194184</td>\n",
       "      <td>0.363713</td>\n",
       "      <td>-0.606424</td>\n",
       "      <td>-1.049607</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>82</th>\n",
       "      <td>-0.776521</td>\n",
       "      <td>-0.125587</td>\n",
       "      <td>-0.613305</td>\n",
       "      <td>-0.575796</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>83</th>\n",
       "      <td>0.186691</td>\n",
       "      <td>-0.195330</td>\n",
       "      <td>-0.717913</td>\n",
       "      <td>0.732675</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>84</th>\n",
       "      <td>-0.100918</td>\n",
       "      <td>-0.198846</td>\n",
       "      <td>-1.258030</td>\n",
       "      <td>-0.795764</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>85</th>\n",
       "      <td>-0.690609</td>\n",
       "      <td>0.050051</td>\n",
       "      <td>-1.269825</td>\n",
       "      <td>-0.613207</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>86</th>\n",
       "      <td>-0.867106</td>\n",
       "      <td>0.286121</td>\n",
       "      <td>-0.312210</td>\n",
       "      <td>0.548829</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>87</th>\n",
       "      <td>0.283512</td>\n",
       "      <td>1.001796</td>\n",
       "      <td>-0.569645</td>\n",
       "      <td>1.070987</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>88</th>\n",
       "      <td>-0.872744</td>\n",
       "      <td>-0.579079</td>\n",
       "      <td>-0.510241</td>\n",
       "      <td>-1.267434</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>89</th>\n",
       "      <td>-1.534632</td>\n",
       "      <td>0.784956</td>\n",
       "      <td>-1.469675</td>\n",
       "      <td>0.988652</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>90</th>\n",
       "      <td>-0.996848</td>\n",
       "      <td>0.465267</td>\n",
       "      <td>-0.642971</td>\n",
       "      <td>-0.911878</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>91</th>\n",
       "      <td>0.804348</td>\n",
       "      <td>0.075435</td>\n",
       "      <td>0.697274</td>\n",
       "      <td>-1.726774</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>92</th>\n",
       "      <td>0.401011</td>\n",
       "      <td>-1.289993</td>\n",
       "      <td>0.830932</td>\n",
       "      <td>-0.316201</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>93</th>\n",
       "      <td>0.940780</td>\n",
       "      <td>0.508218</td>\n",
       "      <td>-0.761059</td>\n",
       "      <td>-0.232344</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>94</th>\n",
       "      <td>0.089894</td>\n",
       "      <td>-1.380726</td>\n",
       "      <td>-0.206035</td>\n",
       "      <td>1.385272</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>95</th>\n",
       "      <td>-1.277717</td>\n",
       "      <td>-0.759455</td>\n",
       "      <td>-2.305354</td>\n",
       "      <td>2.230311</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>96</th>\n",
       "      <td>0.339839</td>\n",
       "      <td>-0.621572</td>\n",
       "      <td>-0.460445</td>\n",
       "      <td>-1.142008</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>97</th>\n",
       "      <td>0.092550</td>\n",
       "      <td>-2.727373</td>\n",
       "      <td>0.926932</td>\n",
       "      <td>-1.035073</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>98</th>\n",
       "      <td>-0.781695</td>\n",
       "      <td>0.254256</td>\n",
       "      <td>-0.669913</td>\n",
       "      <td>-0.125292</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99</th>\n",
       "      <td>0.275079</td>\n",
       "      <td>-0.730189</td>\n",
       "      <td>2.250146</td>\n",
       "      <td>-0.150799</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>100 rows × 4 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           A         B         C         D\n",
       "0  -0.008310 -0.053624  1.798396  0.138595\n",
       "1  -1.344304 -0.028952 -0.076123 -0.829270\n",
       "2  -0.343778  1.594140 -0.831001  1.900353\n",
       "3  -1.348509 -0.882588 -0.203674 -0.411030\n",
       "4  -2.041566 -0.882647 -0.054641 -0.046930\n",
       "5  -0.710327 -1.258028 -0.384423 -0.069904\n",
       "6   0.664171 -0.231192 -0.285627 -0.248912\n",
       "7   1.523360  0.502369  1.244600 -1.348122\n",
       "8  -0.418095  1.609521 -0.540121 -0.182362\n",
       "9  -1.279626 -0.036162 -0.871554  1.015160\n",
       "10 -0.296402  0.150533 -1.389771  0.827824\n",
       "11 -0.582228 -1.828023 -1.135944  0.187333\n",
       "12 -1.223798 -0.499083  0.395239 -0.244925\n",
       "13 -0.288990  0.522798  0.861126 -0.537187\n",
       "14 -1.347528  0.013153 -0.537698  0.664267\n",
       "15 -1.267301  1.180118  2.108890  1.098086\n",
       "16  1.385075 -0.722651  0.749358  0.379104\n",
       "17  0.759984  0.198888 -0.187275 -1.211001\n",
       "18 -1.477493  2.190906  0.687560 -0.584069\n",
       "19  0.830230 -0.681216  0.988547 -1.120900\n",
       "20 -1.951663  1.244566 -0.249393 -0.853830\n",
       "21  0.195063  1.801525  0.027566  0.762488\n",
       "22 -0.711930 -0.037341 -0.939025 -0.108168\n",
       "23 -1.168249 -0.055901  0.977498  1.688507\n",
       "24  1.153510 -0.665653  1.476275 -0.943668\n",
       "25  0.267146  1.485300 -0.908427 -1.669518\n",
       "26  1.742811  0.384381 -1.060775 -1.479590\n",
       "27  0.162092  0.416086 -1.126656  0.291683\n",
       "28 -1.297844 -0.159167  1.775227  0.535627\n",
       "29  0.516089  0.600935  1.315980 -0.204907\n",
       "..       ...       ...       ...       ...\n",
       "70  0.706478  0.260372 -0.875211  1.070002\n",
       "71  0.663207  1.102736 -0.502816 -0.752337\n",
       "72  0.562628 -0.902316  1.103537  1.033512\n",
       "73 -1.076199  0.501043 -0.569909  0.155121\n",
       "74 -0.297485  0.258850 -0.102610  0.509318\n",
       "75  0.071658  0.509969 -0.672300 -1.022813\n",
       "76 -0.442521 -0.658706  1.423937 -0.317515\n",
       "77  1.636244 -0.259715 -1.004771  0.890891\n",
       "78 -0.780235  2.080677  0.191512  0.690557\n",
       "79  1.059573 -0.510580 -0.091764 -0.420776\n",
       "80 -0.572016  0.412046  1.233115 -2.655485\n",
       "81 -0.194184  0.363713 -0.606424 -1.049607\n",
       "82 -0.776521 -0.125587 -0.613305 -0.575796\n",
       "83  0.186691 -0.195330 -0.717913  0.732675\n",
       "84 -0.100918 -0.198846 -1.258030 -0.795764\n",
       "85 -0.690609  0.050051 -1.269825 -0.613207\n",
       "86 -0.867106  0.286121 -0.312210  0.548829\n",
       "87  0.283512  1.001796 -0.569645  1.070987\n",
       "88 -0.872744 -0.579079 -0.510241 -1.267434\n",
       "89 -1.534632  0.784956 -1.469675  0.988652\n",
       "90 -0.996848  0.465267 -0.642971 -0.911878\n",
       "91  0.804348  0.075435  0.697274 -1.726774\n",
       "92  0.401011 -1.289993  0.830932 -0.316201\n",
       "93  0.940780  0.508218 -0.761059 -0.232344\n",
       "94  0.089894 -1.380726 -0.206035  1.385272\n",
       "95 -1.277717 -0.759455 -2.305354  2.230311\n",
       "96  0.339839 -0.621572 -0.460445 -1.142008\n",
       "97  0.092550 -2.727373  0.926932 -1.035073\n",
       "98 -0.781695  0.254256 -0.669913 -0.125292\n",
       "99  0.275079 -0.730189  2.250146 -0.150799\n",
       "\n",
       "[100 rows x 4 columns]"
      ]
     },
     "execution_count": 53,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df_scale"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 54,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "A    3.774758e-17\n",
       "B   -2.775558e-17\n",
       "C    1.332268e-17\n",
       "D    6.661338e-18\n",
       "dtype: float64"
      ]
     },
     "execution_count": 54,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.mean(df_scale)\n",
    "#mean ~ 0"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 73,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "A    1.0\n",
       "B    1.0\n",
       "C    1.0\n",
       "D    1.0\n",
       "dtype: float64"
      ]
     },
     "execution_count": 73,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "np.std(df_scale)\n",
    "#standard deviation ~ 1"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 56,
   "metadata": {},
   "outputs": [],
   "source": [
    "results = smf.ols('price ~ A + B + C + D', data=df).fit()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 57,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                            OLS Regression Results                            \n",
      "==============================================================================\n",
      "Dep. Variable:                  price   R-squared:                       1.000\n",
      "Model:                            OLS   Adj. R-squared:                  1.000\n",
      "Method:                 Least Squares   F-statistic:                 1.275e+32\n",
      "Date:                Mon, 19 Nov 2018   Prob (F-statistic):               0.00\n",
      "Time:                        22:58:07   Log-Likelihood:                 3332.3\n",
      "No. Observations:                 100   AIC:                            -6655.\n",
      "Df Residuals:                      95   BIC:                            -6642.\n",
      "Df Model:                           4                                         \n",
      "Covariance Type:            nonrobust                                         \n",
      "==============================================================================\n",
      "                 coef    std err          t      P>|t|      [0.025      0.975]\n",
      "------------------------------------------------------------------------------\n",
      "Intercept      1.2000   8.49e-17   1.41e+16      0.000       1.200       1.200\n",
      "A              0.9000   8.43e-17   1.07e+16      0.000       0.900       0.900\n",
      "B             -0.6500   8.58e-17  -7.57e+15      0.000      -0.650      -0.650\n",
      "C              1.3000   8.37e-17   1.55e+16      0.000       1.300       1.300\n",
      "D             -0.0050   8.19e-17  -6.11e+13      0.000      -0.005      -0.005\n",
      "==============================================================================\n",
      "Omnibus:                        2.650   Durbin-Watson:                   1.485\n",
      "Prob(Omnibus):                  0.266   Jarque-Bera (JB):                2.428\n",
      "Skew:                           0.071   Prob(JB):                        0.297\n",
      "Kurtosis:                       3.750   Cond. No.                         1.28\n",
      "==============================================================================\n",
      "\n",
      "Warnings:\n",
      "[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n"
     ]
    }
   ],
   "source": [
    "print(results.summary())"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1c1aa60c88>"
      ]
     },
     "execution_count": 78,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.A.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 79,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1c1a9f4a20>"
      ]
     },
     "execution_count": 79,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.B.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 80,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1c1abf3908>"
      ]
     },
     "execution_count": 80,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX4AAAD8CAYAAABw1c+bAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADl0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uIDIuMi4yLCBodHRwOi8vbWF0cGxvdGxpYi5vcmcvhp/UCwAAFEBJREFUeJzt3X+MZeV93/H3p2A3lCGAQzyGhXYjFaFgNsZlhG1ZlWaMTdZrFJLKaUHIhQZrkshObWmrhtSqce1WpUrWUVoik61ZQVrKuGqMTAEbb6mnBMm/dq3FC10cKN3Iu4t2RcBrj71tNPa3f8xddTLcYe7cHzPDPO+XdDX3POc5zw/Nnc89c+4556aqkCS146+t9wAkSWvL4Jekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ15sz1HkA3F1xwQW3dunVN+vrhD3/I2WefvSZ9bQTOd/Nrbc7Od8H+/ftfrKqf7aWNDRn8W7duZd++fWvS1+zsLJOTk2vS10bgfDe/1ubsfBck+fNe2/BQjyQ1xuCXpMYY/JLUGINfkhpj8EtSY1YM/iSXJPlKkkNJnk7ykU75G5LsTfJs5+f5y2x/c6fOs0luHvYEJEmr08se/zyws6p+Hng78KEklwO3AY9V1aXAY53lvyLJG4DbgbcBVwO3L/cGIUlaGysGf1W9UFXf6jz/AXAI2AJcD9zbqXYv8MtdNv9FYG9VvVRVLwN7ge3DGLgkqT+rOsafZCvwVuDrwHhVvQALbw7AG7tssgX47qLlI50ySdI66fnK3SRjwJ8AH62q7yfpabMuZV2/3T3JNDANMD4+zuzsbK9DG8jc3Nya9bURDHO+B4+eHEo7ozR+Fvy7+74wtPa2bTl3aG2Niq/pzW0Y8+0p+JO8joXQv6+qPt8pPp7kwqp6IcmFwIkumx4BJhctXwzMduujqnYDuwEmJiZqrS7B9nLv/t1y28NDaWeUdm6bZ9fB4d2Z5PBNk0Nra1R8TW9uw5hvL2f1BLgbOFRVn1606kHg9Fk6NwPddqseBa5Ncn7nQ91rO2WSpHXSyzH+dwIfAN6V5EDnsQO4A3hPkmeB93SWSTKR5LMAVfUS8Cngm53HJztlkqR1suL/wFX1BN2P1QNc06X+PuCDi5b3AHv6HaAkabi8cleSGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5Ias+I3cCXZA1wHnKiqKzplnwMu61Q5D/heVV3ZZdvDwA+AHwPzVTUxpHFLkvq0YvAD9wB3An98uqCq/sHp50l2ASdfZfupqnqx3wFKkoarl+/cfTzJ1m7rkgT4+8C7hjssSdKoDHqM/+8Cx6vq2WXWF/DlJPuTTA/YlyRpCFJVK1da2ON/6PQx/kXlnwGeq6pdy2x3UVUdS/JGYC/wW1X1+DJ1p4FpgPHx8atmZmZWM4++zc3NMTY2tiZ9bQTDnO/Bo692hG9jGD8Ljp8aXnvbtpw7vMZGxNf05rbcfKempvb3+jlq38Gf5EzgKHBVVR3poY1PAHNV9Xsr1Z2YmKh9+/atOK5hmJ2dZXJyck362giGOd+ttz08lHZGaee2eXYd7OWjrN4cvuN9Q2trVHxNb27LzTdJz8E/yKGedwPPLBf6Sc5Ocs7p58C1wFMD9CdJGoIVgz/J/cBXgcuSHElya2fVDcD9S+pelOSRzuI48ESSJ4FvAA9X1ZeGN3RJUj96OavnxmXKb+lSdgzY0Xn+PPCWAccnSRoyr9yVpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/JDXG4JekxvTy1Yt7kpxI8tSisk8kOZrkQOexY5lttyf5TpLnktw2zIFLkvrTyx7/PcD2LuW/X1VXdh6PLF2Z5AzgD4H3ApcDNya5fJDBSpIGt2LwV9XjwEt9tH018FxVPV9VfwnMANf30Y4kaYhSVStXSrYCD1XVFZ3lTwC3AN8H9gE7q+rlJdu8H9heVR/sLH8AeFtVfXiZPqaBaYDx8fGrZmZm+prQas3NzTE2NrYmfY3KwaMne647fhYcPzXCwWwww57vti3nDq+xEdkMr+nVcL4Lpqam9lfVRC9tnNln358BPgVU5+cu4NeW1EmX7ZZ9l6mq3cBugImJiZqcnOxzaKszOzvLWvU1Krfc9nDPdXdum2fXwX5/7a89w57v4Zsmh9bWqGyG1/RqON/V6+usnqo6XlU/rqqfAP+ehcM6Sx0BLlm0fDFwrJ/+JEnD01fwJ7lw0eKvAE91qfZN4NIkP5fk9cANwIP99CdJGp4V/wdOcj8wCVyQ5AhwOzCZ5EoWDt0cBn69U/ci4LNVtaOq5pN8GHgUOAPYU1VPj2QWkqSerRj8VXVjl+K7l6l7DNixaPkR4BWnekqS1o9X7kpSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktQYg1+SGmPwS1JjVgz+JHuSnEjy1KKy303yTJJvJ3kgyXnLbHs4ycEkB5LsG+bAJUn96WWP/x5g+5KyvcAVVfULwJ8Bv/Mq209V1ZVVNdHfECVJw7Ri8FfV48BLS8q+XFXzncWvARePYGySpBFIVa1cKdkKPFRVV3RZ91+Bz1XVf+yy7n8DLwMF/FFV7X6VPqaBaYDx8fGrZmZmepzCYObm5hgbG1uTvkbl4NGTPdcdPwuOnxrhYDaYYc9325Zzh9fYiGyG1/RqON8FU1NT+3s9snLmIANI8jFgHrhvmSrvrKpjSd4I7E3yTOc/iFfovCnsBpiYmKjJyclBhtaz2dlZ1qqvUbnltod7rrtz2zy7Dg70a39NGfZ8D980ObS2RmUzvKZXw/muXt9n9SS5GbgOuKmW+behqo51fp4AHgCu7rc/SdJw9BX8SbYDvw38UlX9aJk6Zyc55/Rz4FrgqW51JUlrp5fTOe8HvgpcluRIkluBO4FzWDh8cyDJXZ26FyV5pLPpOPBEkieBbwAPV9WXRjILSVLPVjz4WVU3dim+e5m6x4AdnefPA28ZaHSSpKFr51M+aQi2ruKD9PWyc9v8qj7wX8nhO943tLa0MXjLBklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSY3oK/iR7kpxI8tSisjck2Zvk2c7P85fZ9uZOnWc7X9AuSVpHve7x3wNsX1J2G/BYVV0KPNZZ/iuSvAG4HXgbcDVw+3JvEJKktdFT8FfV48BLS4qvB+7tPL8X+OUum/4isLeqXqqql4G9vPINRJK0hlJVvVVMtgIPVdUVneXvVdV5i9a/XFXnL9nmnwA/VVX/srP8z4FTVfV7XdqfBqYBxsfHr5qZmelrQqs1NzfH2NjYmvQ1KgePnuy57vhZcPzUCAezwbQ2Xxj+nLdtOXd4jY3AZvgbXo3l5js1NbW/qiZ6aWPUX7aeLmVd32mqajewG2BiYqImJydHOKz/b3Z2lrXqa1RW88XaO7fNs+vgqH/tG0dr84Xhz/nwTZNDa2sUNsPf8GoMY76DnNVzPMmFAJ2fJ7rUOQJcsmj5YuDYAH1KkgY0SPA/CJw+S+dm4Atd6jwKXJvk/M6Hutd2yiRJ66TX0znvB74KXJbkSJJbgTuA9yR5FnhPZ5kkE0k+C1BVLwGfAr7ZeXyyUyZJWic9HQisqhuXWXVNl7r7gA8uWt4D7OlrdJKkofPKXUlqjMEvSY0x+CWpMQa/JDXG4JekxrR1SaOkVdu6iivDh+nwHe9bl35b4B6/JDXG4Jekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMb0HfxJLktyYNHj+0k+uqTOZJKTi+p8fPAhS5IG0fe9eqrqO8CVAEnOAI4CD3Sp+qdVdV2//UiShmtYh3quAf5XVf35kNqTJI3IsIL/BuD+Zda9I8mTSb6Y5M1D6k+S1KdU1WANJK8HjgFvrqrjS9b9NPCTqppLsgP4g6q6dJl2poFpgPHx8atmZmYGGlev5ubmGBsbW5O+RuXg0ZM91x0/C46fGuFgNpjW5gubZ87btpzbU73N8De8GsvNd2pqan9VTfTSxjCC/3rgQ1V1bQ91DwMTVfXiq9WbmJioffv2DTSuXs3OzjI5ObkmfY3Kau6XvnPbPLsOtvM1DK3NFzbPnHu9H/9m+BtejeXmm6Tn4B/GoZ4bWeYwT5I3JUnn+dWd/v5iCH1Kkvo00G5Bkr8BvAf49UVlvwFQVXcB7wd+M8k8cAq4oQb9F0OSNJCBgr+qfgT8zJKyuxY9vxO4c5A+JEnD5ZW7ktQYg1+SGmPwS1JjDH5JaozBL0mNMfglqTEGvyQ1xuCXpMYY/JLUGINfkhpj8EtSYwx+SWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1JiBgz/J4SQHkxxI8opvSM+Cf5vkuSTfTvJ3Bu1TktS/gb56cZGpqnpxmXXvBS7tPN4GfKbzU5K0DtbiUM/1wB/Xgq8B5yW5cA36lSR1MYzgL+DLSfYnme6yfgvw3UXLRzplkqR1kKoarIHkoqo6luSNwF7gt6rq8UXrHwb+dVU90Vl+DPinVbV/STvTwDTA+Pj4VTMzMwONq1dzc3OMjY2tSV+jcvDoyZ7rjp8Fx0+NcDAbTGvzhc0z521bzu2p3mb4G16N5eY7NTW1v6omemlj4GP8VXWs8/NEkgeAq4HHF1U5AlyyaPli4FiXdnYDuwEmJiZqcnJy0KH1ZHZ2lrXqa1Ruue3hnuvu3DbProPD+mhn42ttvrB55nz4psme6m2Gv+HVGMZ8BzrUk+TsJOecfg5cCzy1pNqDwD/snN3zduBkVb0wSL+SpP4NulswDjyQ5HRb/6mqvpTkNwCq6i7gEWAH8BzwI+AfDdinJGkAAwV/VT0PvKVL+V2LnhfwoUH6kSQNj1fuSlJjDH5JaozBL0mNMfglqTEGvyQ15rV/lYekTWlrjxcm7tw2v6qLGHtx+I73DbW9jcY9fklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktQYg1+SGmPwS1JjDH5JaozBL0mN2XS3bOj1Mu/TRnG5tyRtZH3v8Se5JMlXkhxK8nSSj3SpM5nkZJIDncfHBxuuJGlQg+zxzwM7q+pbnS9c359kb1X9zyX1/rSqrhugH0nSEPW9x19VL1TVtzrPfwAcArYMa2CSpNEYyoe7SbYCbwW+3mX1O5I8meSLSd48jP4kSf1LVQ3WQDIG/A/gX1XV55es+2ngJ1U1l2QH8AdVdeky7UwD0wDj4+NXzczM9DWeg0dPrqr++Flw/FRfXb0mOd/Nr7U5j2K+27acO9wGh2hubo6xsbFXlE9NTe2vqole2hgo+JO8DngIeLSqPt1D/cPARFW9+Gr1JiYmat++fX2NqZ+zenYd3HQnNy3L+W5+rc15FPPdyF/EMjs7y+Tk5CvKk/Qc/IOc1RPgbuDQcqGf5E2deiS5utPfX/TbpyRpcIO8Tb4T+ABwMMmBTtk/A/4mQFXdBbwf+M0k88Ap4IYa9NiSJGkgfQd/VT0BZIU6dwJ39tuHJGn42jkQKEk9Wu1nhcOyVp8teK8eSWqMwS9JjTH4JakxBr8kNcbgl6TGGPyS1BiDX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktQYg1+SGmPwS1JjBgr+JNuTfCfJc0lu67L+ryf5XGf915NsHaQ/SdLgBvmy9TOAPwTeC1wO3Jjk8iXVbgVerqq/Dfw+8G/67U+SNByD7PFfDTxXVc9X1V8CM8D1S+pcD9zbef5fgGuSvOr39EqSRmuQ4N8CfHfR8pFOWdc6VTUPnAR+ZoA+JUkDGuTL1rvtuVcfdRYqJtPAdGdxLsl3Bhhbz/4xXAC8uBZ9bQTOd/Nrbc6bab7p7WD4cvP9W732M0jwHwEuWbR8MXBsmTpHkpwJnAu81K2xqtoN7B5gPH1Jsq+qJta63/XifDe/1ubsfFdvkEM93wQuTfJzSV4P3AA8uKTOg8DNnefvB/57VXXd45ckrY2+9/iraj7Jh4FHgTOAPVX1dJJPAvuq6kHgbuA/JHmOhT39G4YxaElS/wY51ENVPQI8sqTs44ue/x/gVwfpYw2s+eGldeZ8N7/W5ux8VykeeZGktnjLBklqjMEPJPndJM8k+XaSB5Kct95jGqUkv5rk6SQ/SbJpz4ZY6ZYim02SPUlOJHlqvccyakkuSfKVJIc6r+WPrPeYRi3JTyX5RpInO3P+F/22ZfAv2AtcUVW/APwZ8DvrPJ5Rewr4e8Dj6z2QUenxliKbzT3A9vUexBqZB3ZW1c8Dbwc+1MDv9/8C76qqtwBXAtuTvL2fhgx+oKq+3LmyGOBrLFyTsGlV1aGqWpML5NZRL7cU2VSq6nGWuU5ms6mqF6rqW53nPwAO8co7B2wqtWCus/i6zqOvD2kN/lf6NeCL6z0IDayXW4poE+jc9fetwNfXdySjl+SMJAeAE8DequprzgOdzvlakuS/AW/qsupjVfWFTp2PsfAv5H1rObZR6GW+m1zPtwvRa1eSMeBPgI9W1ffXezyjVlU/Bq7sfA75QJIrqmrVn+k0E/xV9e5XW5/kZuA64JrNcHXxSvNtQC+3FNFrWJLXsRD691XV59d7PGupqr6XZJaFz3RWHfwe6mHh7A/gt4Ffqqofrfd4NBS93FJEr1Gd27vfDRyqqk+v93jWQpKfPX3GYZKzgHcDz/TTlsG/4E7gHGBvkgNJ7lrvAY1Skl9JcgR4B/BwkkfXe0zD1vmw/vQtRQ4B/7mqnl7fUY1WkvuBrwKXJTmS5Nb1HtMIvRP4APCuzt/sgSQ71ntQI3Yh8JUk32Zhx2ZvVT3UT0NeuStJjXGPX5IaY/BLUmMMfklqjMEvSY0x+CWpMQa/JDXG4Jekxhj8ktSY/wdINmv/vCqvFAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.C.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 81,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x1c1ab64908>"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "df.D.hist()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 82,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "(array([3., 0., 0., 1., 1., 9., 3., 1., 4., 4., 4., 4., 3., 6., 3., 4., 6.,\n",
       "        6., 5., 5., 3., 5., 3., 2., 3., 2., 3., 1., 3., 0., 1., 0., 0., 0.,\n",
       "        1., 1.]),\n",
       " array([-2.07178897, -1.94020132, -1.80861366, -1.67702601, -1.54543835,\n",
       "        -1.4138507 , -1.28226305, -1.15067539, -1.01908774, -0.88750009,\n",
       "        -0.75591243, -0.62432478, -0.49273713, -0.36114947, -0.22956182,\n",
       "        -0.09797416,  0.03361349,  0.16520114,  0.2967888 ,  0.42837645,\n",
       "         0.5599641 ,  0.69155176,  0.82313941,  0.95472707,  1.08631472,\n",
       "         1.21790237,  1.34949003,  1.48107768,  1.61266533,  1.74425299,\n",
       "         1.87584064,  2.00742829,  2.13901595,  2.2706036 ,  2.40219126,\n",
       "         2.53377891,  2.66536656]),\n",
       " <a list of 36 Patch objects>)"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#matplotlib histogram\n",
    "plt.hist(df['A'], color = 'blue', edgecolor = 'black',\n",
    "         bins = int(180/5))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.collections.PathCollection at 0x1c1a9e0828>"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.scatter(y='price',x='A',data=df)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {},
   "outputs": [],
   "source": [
    "#split data into 70% training and 30% test\n",
    "y = df['price']\n",
    "x = df[['A','B','C','D']]\n",
    "X_train, X_test, y_train, y_test = train_test_split(x, y, test_size=0.3)\n",
    "       "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>A</th>\n",
       "      <th>B</th>\n",
       "      <th>C</th>\n",
       "      <th>D</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>41</th>\n",
       "      <td>-0.803907</td>\n",
       "      <td>-0.302580</td>\n",
       "      <td>0.101745</td>\n",
       "      <td>-0.501059</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>85</th>\n",
       "      <td>-0.709806</td>\n",
       "      <td>0.001458</td>\n",
       "      <td>-1.143499</td>\n",
       "      <td>-0.556965</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>51</th>\n",
       "      <td>2.665367</td>\n",
       "      <td>0.987025</td>\n",
       "      <td>0.679032</td>\n",
       "      <td>1.055745</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>-0.729684</td>\n",
       "      <td>-1.283658</td>\n",
       "      <td>-0.240843</td>\n",
       "      <td>0.000130</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>48</th>\n",
       "      <td>-1.341057</td>\n",
       "      <td>-0.032308</td>\n",
       "      <td>0.208094</td>\n",
       "      <td>1.285137</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>54</th>\n",
       "      <td>-0.102429</td>\n",
       "      <td>-0.215140</td>\n",
       "      <td>-0.451156</td>\n",
       "      <td>0.027029</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>96</th>\n",
       "      <td>0.329054</td>\n",
       "      <td>-0.658375</td>\n",
       "      <td>-0.318347</td>\n",
       "      <td>-1.099189</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>26</th>\n",
       "      <td>1.743477</td>\n",
       "      <td>0.329918</td>\n",
       "      <td>-0.930375</td>\n",
       "      <td>-1.445340</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>95</th>\n",
       "      <td>-1.301706</td>\n",
       "      <td>-0.793837</td>\n",
       "      <td>-2.199206</td>\n",
       "      <td>2.358733</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>1.149366</td>\n",
       "      <td>-0.701682</td>\n",
       "      <td>1.656113</td>\n",
       "      <td>-0.895813</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>86</th>\n",
       "      <td>-0.887743</td>\n",
       "      <td>0.233384</td>\n",
       "      <td>-0.167223</td>\n",
       "      <td>0.634569</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>33</th>\n",
       "      <td>0.175416</td>\n",
       "      <td>-1.696539</td>\n",
       "      <td>-0.118293</td>\n",
       "      <td>-1.474428</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>47</th>\n",
       "      <td>2.498051</td>\n",
       "      <td>1.235081</td>\n",
       "      <td>1.645267</td>\n",
       "      <td>1.403892</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>66</th>\n",
       "      <td>-0.479746</td>\n",
       "      <td>-0.463296</td>\n",
       "      <td>0.750472</td>\n",
       "      <td>-0.725613</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>99</th>\n",
       "      <td>0.263765</td>\n",
       "      <td>-0.765085</td>\n",
       "      <td>2.445064</td>\n",
       "      <td>-0.082818</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>69</th>\n",
       "      <td>-0.559635</td>\n",
       "      <td>1.799475</td>\n",
       "      <td>-0.021384</td>\n",
       "      <td>1.448568</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>80</th>\n",
       "      <td>-0.590245</td>\n",
       "      <td>0.357098</td>\n",
       "      <td>1.408215</td>\n",
       "      <td>-2.651084</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>30</th>\n",
       "      <td>-0.277480</td>\n",
       "      <td>0.144990</td>\n",
       "      <td>1.093116</td>\n",
       "      <td>1.315319</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>74</th>\n",
       "      <td>-0.313472</td>\n",
       "      <td>0.206591</td>\n",
       "      <td>0.046462</td>\n",
       "      <td>0.594055</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>-0.304908</td>\n",
       "      <td>0.465905</td>\n",
       "      <td>1.028977</td>\n",
       "      <td>-0.479015</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>70</th>\n",
       "      <td>0.698686</td>\n",
       "      <td>0.208087</td>\n",
       "      <td>-0.741195</td>\n",
       "      <td>1.168971</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>-1.368836</td>\n",
       "      <td>-0.076158</td>\n",
       "      <td>0.073464</td>\n",
       "      <td>-0.778512</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>76</th>\n",
       "      <td>-0.459692</td>\n",
       "      <td>-0.694857</td>\n",
       "      <td>1.602756</td>\n",
       "      <td>-0.253766</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>36</th>\n",
       "      <td>-0.736080</td>\n",
       "      <td>-1.724905</td>\n",
       "      <td>-1.085378</td>\n",
       "      <td>0.596155</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>73</th>\n",
       "      <td>-1.098543</td>\n",
       "      <td>0.444533</td>\n",
       "      <td>-0.429944</td>\n",
       "      <td>0.230867</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>79</th>\n",
       "      <td>1.054663</td>\n",
       "      <td>-0.549331</td>\n",
       "      <td>0.057519</td>\n",
       "      <td>-0.359649</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>67</th>\n",
       "      <td>0.091804</td>\n",
       "      <td>-0.857780</td>\n",
       "      <td>0.340132</td>\n",
       "      <td>-0.013118</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>-1.503112</td>\n",
       "      <td>2.104730</td>\n",
       "      <td>0.852029</td>\n",
       "      <td>-0.527086</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>-1.373076</td>\n",
       "      <td>-0.914809</td>\n",
       "      <td>-0.056573</td>\n",
       "      <td>-0.349655</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>93</th>\n",
       "      <td>0.934899</td>\n",
       "      <td>0.451582</td>\n",
       "      <td>-0.624819</td>\n",
       "      <td>-0.166434</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>...</th>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>65</th>\n",
       "      <td>0.307705</td>\n",
       "      <td>2.352710</td>\n",
       "      <td>0.099710</td>\n",
       "      <td>-2.448491</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>44</th>\n",
       "      <td>0.749110</td>\n",
       "      <td>-0.538706</td>\n",
       "      <td>1.515910</td>\n",
       "      <td>2.530252</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>45</th>\n",
       "      <td>1.079300</td>\n",
       "      <td>-0.204581</td>\n",
       "      <td>1.284416</td>\n",
       "      <td>-0.724954</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>82</th>\n",
       "      <td>-0.796418</td>\n",
       "      <td>-0.171097</td>\n",
       "      <td>-0.474186</td>\n",
       "      <td>-0.518603</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>52</th>\n",
       "      <td>1.934673</td>\n",
       "      <td>1.884010</td>\n",
       "      <td>-0.340115</td>\n",
       "      <td>-1.780925</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>87</th>\n",
       "      <td>0.272266</td>\n",
       "      <td>0.936495</td>\n",
       "      <td>-0.429674</td>\n",
       "      <td>1.169981</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>37</th>\n",
       "      <td>0.544924</td>\n",
       "      <td>-2.227279</td>\n",
       "      <td>0.700832</td>\n",
       "      <td>1.213465</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>49</th>\n",
       "      <td>1.442989</td>\n",
       "      <td>-1.343638</td>\n",
       "      <td>0.537980</td>\n",
       "      <td>0.360311</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>0.823447</td>\n",
       "      <td>-0.716972</td>\n",
       "      <td>1.158881</td>\n",
       "      <td>-1.077544</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>32</th>\n",
       "      <td>1.105559</td>\n",
       "      <td>0.189199</td>\n",
       "      <td>-0.392496</td>\n",
       "      <td>1.786224</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>72</th>\n",
       "      <td>0.553661</td>\n",
       "      <td>-0.934191</td>\n",
       "      <td>1.276112</td>\n",
       "      <td>1.131555</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>-0.312381</td>\n",
       "      <td>0.100176</td>\n",
       "      <td>-1.265782</td>\n",
       "      <td>0.920646</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>28</th>\n",
       "      <td>-1.321996</td>\n",
       "      <td>-0.204088</td>\n",
       "      <td>1.960891</td>\n",
       "      <td>0.621032</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>81</th>\n",
       "      <td>-0.209329</td>\n",
       "      <td>0.309613</td>\n",
       "      <td>-0.467170</td>\n",
       "      <td>-1.004442</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>58</th>\n",
       "      <td>-0.980096</td>\n",
       "      <td>-0.934611</td>\n",
       "      <td>0.560360</td>\n",
       "      <td>-0.022527</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>62</th>\n",
       "      <td>-0.343532</td>\n",
       "      <td>-0.882449</td>\n",
       "      <td>2.850778</td>\n",
       "      <td>0.182454</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>78</th>\n",
       "      <td>-0.800163</td>\n",
       "      <td>1.996436</td>\n",
       "      <td>0.346315</td>\n",
       "      <td>0.779894</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>-0.435067</td>\n",
       "      <td>1.533551</td>\n",
       "      <td>-0.399575</td>\n",
       "      <td>-0.115183</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>46</th>\n",
       "      <td>0.666069</td>\n",
       "      <td>0.412319</td>\n",
       "      <td>-2.009101</td>\n",
       "      <td>0.139514</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>83</th>\n",
       "      <td>0.174656</td>\n",
       "      <td>-0.239616</td>\n",
       "      <td>-0.580832</td>\n",
       "      <td>0.823082</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>43</th>\n",
       "      <td>-0.566303</td>\n",
       "      <td>0.228927</td>\n",
       "      <td>-1.145837</td>\n",
       "      <td>0.768929</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>-2.071789</td>\n",
       "      <td>-0.914867</td>\n",
       "      <td>0.095365</td>\n",
       "      <td>0.023687</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>-1.372086</td>\n",
       "      <td>-0.034792</td>\n",
       "      <td>-0.397105</td>\n",
       "      <td>0.752937</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>56</th>\n",
       "      <td>-1.180194</td>\n",
       "      <td>-0.161658</td>\n",
       "      <td>0.466173</td>\n",
       "      <td>0.517605</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>94</th>\n",
       "      <td>0.077069</td>\n",
       "      <td>-1.404201</td>\n",
       "      <td>-0.058979</td>\n",
       "      <td>1.492244</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>88</th>\n",
       "      <td>-0.893427</td>\n",
       "      <td>-0.616628</td>\n",
       "      <td>-0.369113</td>\n",
       "      <td>-1.227798</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>0.183096</td>\n",
       "      <td>1.722185</td>\n",
       "      <td>0.179174</td>\n",
       "      <td>0.853651</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>89</th>\n",
       "      <td>-1.560717</td>\n",
       "      <td>0.723461</td>\n",
       "      <td>-1.347243</td>\n",
       "      <td>1.085556</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>1.382821</td>\n",
       "      <td>-0.757679</td>\n",
       "      <td>0.915031</td>\n",
       "      <td>0.460536</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>98</th>\n",
       "      <td>-0.801635</td>\n",
       "      <td>0.202078</td>\n",
       "      <td>-0.531896</td>\n",
       "      <td>-0.056664</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>70 rows × 4 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "           A         B         C         D\n",
       "41 -0.803907 -0.302580  0.101745 -0.501059\n",
       "85 -0.709806  0.001458 -1.143499 -0.556965\n",
       "51  2.665367  0.987025  0.679032  1.055745\n",
       "5  -0.729684 -1.283658 -0.240843  0.000130\n",
       "48 -1.341057 -0.032308  0.208094  1.285137\n",
       "54 -0.102429 -0.215140 -0.451156  0.027029\n",
       "96  0.329054 -0.658375 -0.318347 -1.099189\n",
       "26  1.743477  0.329918 -0.930375 -1.445340\n",
       "95 -1.301706 -0.793837 -2.199206  2.358733\n",
       "24  1.149366 -0.701682  1.656113 -0.895813\n",
       "86 -0.887743  0.233384 -0.167223  0.634569\n",
       "33  0.175416 -1.696539 -0.118293 -1.474428\n",
       "47  2.498051  1.235081  1.645267  1.403892\n",
       "66 -0.479746 -0.463296  0.750472 -0.725613\n",
       "99  0.263765 -0.765085  2.445064 -0.082818\n",
       "69 -0.559635  1.799475 -0.021384  1.448568\n",
       "80 -0.590245  0.357098  1.408215 -2.651084\n",
       "30 -0.277480  0.144990  1.093116  1.315319\n",
       "74 -0.313472  0.206591  0.046462  0.594055\n",
       "13 -0.304908  0.465905  1.028977 -0.479015\n",
       "70  0.698686  0.208087 -0.741195  1.168971\n",
       "1  -1.368836 -0.076158  0.073464 -0.778512\n",
       "76 -0.459692 -0.694857  1.602756 -0.253766\n",
       "36 -0.736080 -1.724905 -1.085378  0.596155\n",
       "73 -1.098543  0.444533 -0.429944  0.230867\n",
       "79  1.054663 -0.549331  0.057519 -0.359649\n",
       "67  0.091804 -0.857780  0.340132 -0.013118\n",
       "18 -1.503112  2.104730  0.852029 -0.527086\n",
       "3  -1.373076 -0.914809 -0.056573 -0.349655\n",
       "93  0.934899  0.451582 -0.624819 -0.166434\n",
       "..       ...       ...       ...       ...\n",
       "65  0.307705  2.352710  0.099710 -2.448491\n",
       "44  0.749110 -0.538706  1.515910  2.530252\n",
       "45  1.079300 -0.204581  1.284416 -0.724954\n",
       "82 -0.796418 -0.171097 -0.474186 -0.518603\n",
       "52  1.934673  1.884010 -0.340115 -1.780925\n",
       "87  0.272266  0.936495 -0.429674  1.169981\n",
       "37  0.544924 -2.227279  0.700832  1.213465\n",
       "49  1.442989 -1.343638  0.537980  0.360311\n",
       "19  0.823447 -0.716972  1.158881 -1.077544\n",
       "32  1.105559  0.189199 -0.392496  1.786224\n",
       "72  0.553661 -0.934191  1.276112  1.131555\n",
       "10 -0.312381  0.100176 -1.265782  0.920646\n",
       "28 -1.321996 -0.204088  1.960891  0.621032\n",
       "81 -0.209329  0.309613 -0.467170 -1.004442\n",
       "58 -0.980096 -0.934611  0.560360 -0.022527\n",
       "62 -0.343532 -0.882449  2.850778  0.182454\n",
       "78 -0.800163  1.996436  0.346315  0.779894\n",
       "8  -0.435067  1.533551 -0.399575 -0.115183\n",
       "46  0.666069  0.412319 -2.009101  0.139514\n",
       "83  0.174656 -0.239616 -0.580832  0.823082\n",
       "43 -0.566303  0.228927 -1.145837  0.768929\n",
       "4  -2.071789 -0.914867  0.095365  0.023687\n",
       "14 -1.372086 -0.034792 -0.397105  0.752937\n",
       "56 -1.180194 -0.161658  0.466173  0.517605\n",
       "94  0.077069 -1.404201 -0.058979  1.492244\n",
       "88 -0.893427 -0.616628 -0.369113 -1.227798\n",
       "21  0.183096  1.722185  0.179174  0.853651\n",
       "89 -1.560717  0.723461 -1.347243  1.085556\n",
       "16  1.382821 -0.757679  0.915031  0.460536\n",
       "98 -0.801635  0.202078 -0.531896 -0.056664\n",
       "\n",
       "[70 rows x 4 columns]"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "X_train"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 60,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "98   -0.344004\n",
       "38    5.523300\n",
       "91    3.029467\n",
       "50    5.490373\n",
       "51    3.834727\n",
       "4     0.053910\n",
       "42    2.725094\n",
       "97    4.474290\n",
       "31    1.182591\n",
       "23    1.677389\n",
       "10   -0.796377\n",
       "76    3.322785\n",
       "36    0.244744\n",
       "25   -0.486666\n",
       "17    1.735412\n",
       "93    0.936448\n",
       "59    0.529571\n",
       "3     0.487062\n",
       "45    3.977713\n",
       "57    0.120814\n",
       "39   -1.950665\n",
       "18   -0.410602\n",
       "88    0.323016\n",
       "1     0.116946\n",
       "83    0.753743\n",
       "21    0.474024\n",
       "81    0.208057\n",
       "13    1.962810\n",
       "73   -0.637716\n",
       "0     3.824309\n",
       "        ...   \n",
       "8    -0.707240\n",
       "28    2.688913\n",
       "27   -0.198479\n",
       "48    0.278145\n",
       "90   -0.634232\n",
       "77    1.729111\n",
       "12    1.148224\n",
       "64    4.138477\n",
       "7     4.132671\n",
       "74    0.841021\n",
       "49    4.069627\n",
       "84   -0.212971\n",
       "58    1.653991\n",
       "78   -0.371520\n",
       "86    0.028769\n",
       "2    -1.026177\n",
       "11    0.547453\n",
       "79    2.582834\n",
       "69   -0.508372\n",
       "19    3.919068\n",
       "37    4.043177\n",
       "99    5.113692\n",
       "26    1.352422\n",
       "61   -0.180970\n",
       "14   -0.532263\n",
       "29    3.244526\n",
       "32    1.552848\n",
       "33    2.314216\n",
       "5     1.064565\n",
       "22   -0.451244\n",
       "Name: price, Length: 70, dtype: float64"
      ]
     },
     "execution_count": 60,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "y_train"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {},
   "outputs": [],
   "source": [
    "#another way of doing regression in python with using this modules\n",
    "lm = linear_model.LinearRegression()\n",
    "model = lm.fit(X_train, y_train)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 62,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LinearRegression(copy_X=True, fit_intercept=True, n_jobs=1, normalize=False)"
      ]
     },
     "execution_count": 62,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 63,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "array([ 0.9  , -0.65 ,  1.3  , -0.005])"
      ]
     },
     "execution_count": 63,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.coef_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 64,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "1.1999999999999997"
      ]
     },
     "execution_count": 64,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "model.intercept_"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 65,
   "metadata": {},
   "outputs": [],
   "source": [
    "predictions = lm.predict(X_test)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 66,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "8.03523914072457e-15"
      ]
     },
     "execution_count": 66,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "sum(y_test - predictions)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 67,
   "metadata": {},
   "outputs": [],
   "source": [
    "rms = sqrt(mean_squared_error(y_test, predictions))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 68,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "9.468984558068926e-16"
      ]
     },
     "execution_count": 68,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "rms"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "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.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}