{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"# Statsmodels"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Setup"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"%matplotlib inline\n",
"\n",
"import pandas as pd\n",
"import seaborn as sns \n",
"import matplotlib.pyplot as plt\n",
"import statsmodels.formula.api as smf\n",
"from statsmodels.tools.eval_measures import mse, rmse\n",
"\n",
"sns.set_theme(style=\"ticks\", color_codes=True)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Data preparation"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"scrolled": true,
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"# See notebook \"Data Exploration\" for details about data preprocessing\n",
"from case_duke_data_prep import *"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Data splitting"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [],
"source": [
"train_dataset = df.sample(frac=0.8, random_state=0)\n",
"test_dataset = df.drop(train_dataset.index)"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Modeling"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Train the model"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [],
"source": [
"# Fit Model\n",
"lm = smf.ols(formula='price ~ area', data=train_dataset).fit()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"text/html": [
"
\n",
"\n",
" | coef | std err | t | P>|t| | [0.025 | 0.975] | \n",
"
\n",
"\n",
" Intercept | 8.593e+04 | 6.21e+04 | 1.383 | 0.171 | -3.78e+04 | 2.1e+05 | \n",
"
\n",
"\n",
" area | 167.7007 | 20.741 | 8.085 | 0.000 | 126.391 | 209.010 | \n",
"
\n",
"
"
],
"text/plain": [
""
]
},
"execution_count": 10,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Short summary\n",
"lm.summary().tables[1]"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"OLS Regression Results\n",
"\n",
" Dep. Variable: | price | R-squared: | 0.462 | \n",
"
\n",
"\n",
" Model: | OLS | Adj. R-squared: | 0.455 | \n",
"
\n",
"\n",
" Method: | Least Squares | F-statistic: | 65.37 | \n",
"
\n",
"\n",
" Date: | Wed, 05 Jan 2022 | Prob (F-statistic): | 7.56e-12 | \n",
"
\n",
"\n",
" Time: | 22:37:38 | Log-Likelihood: | -1053.3 | \n",
"
\n",
"\n",
" No. Observations: | 78 | AIC: | 2111. | \n",
"
\n",
"\n",
" Df Residuals: | 76 | BIC: | 2115. | \n",
"
\n",
"\n",
" Df Model: | 1 | | | \n",
"
\n",
"\n",
" Covariance Type: | nonrobust | | | \n",
"
\n",
"
\n",
"\n",
"\n",
" | coef | std err | t | P>|t| | [0.025 | 0.975] | \n",
"
\n",
"\n",
" Intercept | 8.593e+04 | 6.21e+04 | 1.383 | 0.171 | -3.78e+04 | 2.1e+05 | \n",
"
\n",
"\n",
" area | 167.7007 | 20.741 | 8.085 | 0.000 | 126.391 | 209.010 | \n",
"
\n",
"
\n",
"\n",
"\n",
" Omnibus: | 26.589 | Durbin-Watson: | 2.159 | \n",
"
\n",
"\n",
" Prob(Omnibus): | 0.000 | Jarque-Bera (JB): | 107.927 | \n",
"
\n",
"\n",
" Skew: | -0.862 | Prob(JB): | 3.66e-24 | \n",
"
\n",
"\n",
" Kurtosis: | 8.499 | Cond. No. | 9.16e+03 | \n",
"
\n",
"
Notes:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
[2] The condition number is large, 9.16e+03. This might indicate that there are
strong multicollinearity or other numerical problems."
],
"text/plain": [
"\n",
"\"\"\"\n",
" OLS Regression Results \n",
"==============================================================================\n",
"Dep. Variable: price R-squared: 0.462\n",
"Model: OLS Adj. R-squared: 0.455\n",
"Method: Least Squares F-statistic: 65.37\n",
"Date: Wed, 05 Jan 2022 Prob (F-statistic): 7.56e-12\n",
"Time: 22:37:38 Log-Likelihood: -1053.3\n",
"No. Observations: 78 AIC: 2111.\n",
"Df Residuals: 76 BIC: 2115.\n",
"Df Model: 1 \n",
"Covariance Type: nonrobust \n",
"==============================================================================\n",
" coef std err t P>|t| [0.025 0.975]\n",
"------------------------------------------------------------------------------\n",
"Intercept 8.593e+04 6.21e+04 1.383 0.171 -3.78e+04 2.1e+05\n",
"area 167.7007 20.741 8.085 0.000 126.391 209.010\n",
"==============================================================================\n",
"Omnibus: 26.589 Durbin-Watson: 2.159\n",
"Prob(Omnibus): 0.000 Jarque-Bera (JB): 107.927\n",
"Skew: -0.862 Prob(JB): 3.66e-24\n",
"Kurtosis: 8.499 Cond. No. 9.16e+03\n",
"==============================================================================\n",
"\n",
"Notes:\n",
"[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
"[2] The condition number is large, 9.16e+03. This might indicate that there are\n",
"strong multicollinearity or other numerical problems.\n",
"\"\"\""
]
},
"execution_count": 11,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Full summary\n",
"lm.summary()"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"To obtain single statistics:"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.4553434818683253"
]
},
"execution_count": 12,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Adjusted R squared \n",
"lm.rsquared_adj"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"0.4624169431427626"
]
},
"execution_count": 13,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# R squared\n",
"lm.rsquared"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"slideshow": {
"slide_type": "fragment"
}
},
"outputs": [
{
"data": {
"text/plain": [
"2110.625966301898"
]
},
"execution_count": 14,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# AIC\n",
"lm.aic"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Int64Index: 78 entries, 26 to 73\n",
"Data columns (total 7 columns):\n",
" # Column Non-Null Count Dtype \n",
"--- ------ -------------- ----- \n",
" 0 price 78 non-null int64 \n",
" 1 bed 78 non-null int64 \n",
" 2 bath 78 non-null float64 \n",
" 3 area 78 non-null int64 \n",
" 4 year_built 78 non-null int64 \n",
" 5 cooling 78 non-null category\n",
" 6 lot 78 non-null float64 \n",
"dtypes: category(1), float64(2), int64(4)\n",
"memory usage: 4.5 KB\n"
]
}
],
"source": [
"train_dataset.info()"
]
},
{
"cell_type": "code",
"execution_count": 16,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [],
"source": [
"# Add the regression predictions (as \"pred\") to our DataFrame\n",
"train_dataset['y_pred'] = lm.predict()"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"data": {
"text/plain": [
"31402336646.61913"
]
},
"execution_count": 17,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# MSE\n",
"mse(train_dataset['price'], train_dataset['y_pred'])"
]
},
{
"cell_type": "code",
"execution_count": 18,
"metadata": {
"slideshow": {
"slide_type": "subslide"
}
},
"outputs": [
{
"data": {
"text/plain": [
"177207.04457390832"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# RMSE\n",
"rmse(train_dataset['price'], train_dataset['y_pred'])"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot regression line \n",
"plt.scatter(train_dataset['area'], train_dataset['price'], color='black')\n",
"plt.plot(train_dataset['area'], train_dataset['y_pred'], color='darkred', linewidth=3);"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"image/png": "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+Pjjj3nooYfc/u8J4OWXX2b69OmcO3cOcP+fPb1eT+fOnZk3bx4mk4nRo0fz9NNPu/U1nTp1Ck9PTyZOnMi5c+fo0aMHzZo1c6lrcqsW7rWsVisajab4sVIKjUZzw+NXvl7t2sfO8PvvvzN27FhmzpxJo0aNqsQ1RUVFsXfvXs6dO8fJkyfd+po+++wz6tevT+fOnYuPufvPXtu2bVm8eDG1atWiTp06DBs2jLi4OLe+JovFwt69e3nttddYt24dycnJnDlzxqWuya1auNcKDQ0tXqoRipZtDA4OLnX8/PnzBAcHU6dOHXJycrBYLGi12uLznenHH38kKiqK6Oho+vfvz759+9z6mo4fP47RaCQ8PBwfHx969+7N1q1bS6zq5m7X9J///IfMzEwGDx5MdnY2+fn5nD171q2vKSkpCZPJVPxLRClFw4YN3fpnr169enTu3Jk6deoA8OCDD7rcz55bt3DbtGnD//73P06dOoXFYuGLL76gW7duNGzYEG9vb3788UcANm3aRLdu3fD09KR9+/b85z//AWDjxo1069bNafWfO3eOyZMns2TJEvr3718lrik1NZW5c+diNBoxGo0kJCQwfPhwt76mlStX8sUXX7Bp0yaioqLo1asXH374oVtfU05ODosXL6awsJDc3Fw+//xzZsyY4dbX1LNnT7777jv0ej0Wi4Vvv/2Whx56yLWuyWa33xyoZ8+e6syZM0qpojvHAwcOVL1791axsbHKarUqpZRKSUlRQ4cOVX369FEzZsxQhYWFSimlUlNT1RNPPKH69u2rxo4dqy5duuS063j11VfVvffeqwYNGlT8Z+3atW59TUopFRcXp/r27asGDBig4uLilFLu/fd0tX//+99q1qxZSin3v6alS5eqhx56SPXu3VutWrVKKeX+1/TZZ5+p/v37q969e6v58+cri8XiUtckU3uFEMJB3LpLQQgh3IkErhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOIhbT+0V4kasViuvvfYaBw4cIC8vD6UUCxYs4LPPPuPSpUucOXOGHj168Nxzz7FkyRL279+PxWLh7rvvZu7cufj5+bFz507ef/99jEYjWVlZPPzww0ybNs3ZlybcmEx8EFXSzz//zMqVK3n77bfx8PBgxYoV/PTTTwQEBJCWlsaqVauAogXg8/LymDlzJhqNhrfeegu9Xk9MTAyjR4/m1Vdf5fbbbyc9Pb146uiVufpCVJS0cEWV1LZtW2rXrs2nn37KmTNn+OGHH6hZsyYBAQHcd999xeclJiaSk5PDnj17ADCZTNStWxeNRsPf/vY3EhMT+eKLLzh+/DhKKQwGg7MuSVQBEriiSkpMTCQ2NpannnqKiIgImjRpwubNmwHw9fUtPs9qtRIdHU337t0ByMvLo7CwkPz8fIYMGcKDDz5I+/btGTp0KN988w3ygVBUhgSuqJJ2795Nz549efzxxykoKOCDDz7AYrGUOq9r166sWbOGzp07o9PpmDdvHr6+vowcOZLc3FymTZuGl5cXGzduxGg0YrVanXA1oqqQUQqiSho+fDj79u1j4MCBDBkyhEaNGpGamloqMCdNmkTDhg0ZMmQI/fr1QynF7Nmzad68OT169KBv37707duXnTt30rRpU06dOuWkKxJVgdw0E0IIB5EWrhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOIgErhBCOMj/Axj4ti9QSxmjAAAAAElFTkSuQmCC",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot with Seaborn\n",
"\n",
"import seaborn as sns \n",
"sns.set_theme(style=\"ticks\")\n",
"\n",
"sns.lmplot(x='area', y='price', data=train_dataset, line_kws={'color': 'darkred'}, ci=False);"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"image/png": "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",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.residplot(x=\"y_pred\", y=\"price\", data=train_dataset, scatter_kws={\"s\": 80});"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"### Validation with test data"
]
},
{
"cell_type": "code",
"execution_count": 22,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [],
"source": [
"# Add regression predictions for the test set (as \"pred_test\") to our DataFrame\n",
"test_dataset['y_pred'] = lm.predict(test_dataset['area'])"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"\n",
"
\n",
" \n",
" \n",
" | \n",
" price | \n",
" bed | \n",
" bath | \n",
" area | \n",
" year_built | \n",
" cooling | \n",
" lot | \n",
" y_pred | \n",
"
\n",
" \n",
" \n",
" \n",
" 9 | \n",
" 650000 | \n",
" 3 | \n",
" 2.0 | \n",
" 2173 | \n",
" 1964 | \n",
" other | \n",
" 0.73 | \n",
" 450348.456333 | \n",
"
\n",
" \n",
" 12 | \n",
" 671500 | \n",
" 3 | \n",
" 3.0 | \n",
" 2200 | \n",
" 1964 | \n",
" central | \n",
" 0.51 | \n",
" 454876.375736 | \n",
"
\n",
" \n",
" 21 | \n",
" 645000 | \n",
" 4 | \n",
" 4.0 | \n",
" 2300 | \n",
" 1969 | \n",
" central | \n",
" 0.47 | \n",
" 471646.447601 | \n",
"
\n",
" \n",
" 25 | \n",
" 603000 | \n",
" 4 | \n",
" 4.0 | \n",
" 3487 | \n",
" 1965 | \n",
" central | \n",
" 0.61 | \n",
" 670707.200633 | \n",
"
\n",
" \n",
" 36 | \n",
" 615000 | \n",
" 3 | \n",
" 3.0 | \n",
" 2203 | \n",
" 1954 | \n",
" other | \n",
" 0.63 | \n",
" 455379.477892 | \n",
"
\n",
" \n",
"
\n",
"
"
],
"text/plain": [
" price bed bath area year_built cooling lot y_pred\n",
"9 650000 3 2.0 2173 1964 other 0.73 450348.456333\n",
"12 671500 3 3.0 2200 1964 central 0.51 454876.375736\n",
"21 645000 4 4.0 2300 1969 central 0.47 471646.447601\n",
"25 603000 4 4.0 3487 1965 central 0.61 670707.200633\n",
"36 615000 3 3.0 2203 1954 other 0.63 455379.477892"
]
},
"execution_count": 23,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"test_dataset.head()"
]
},
{
"cell_type": "code",
"execution_count": 24,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAYsAAAD7CAYAAACbtbj+AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8/fFQqAAAACXBIWXMAAAsTAAALEwEAmpwYAAAzMElEQVR4nO3dfVxU173v8c/ADIhB4iFlHBTENCenycWe2OuY1Jt05iS2PGQYLSSeeJ0qbdrQeFq1ppLydPDYhmjsVKm12OttmxpKH0xMIOEMY/IyRZOQRiU99UWjaY8VFHB4EM3wIE/Dvn8ocxlF96ggMPzerxcvymLNsNbezXxde6+1tkZRFAUhhBDiGoLGugFCCCHGPwkLIYQQqiQshBBCqJKwEEIIoUrCQgghhCrtWDdgpHV3d1NTU0NUVBTBwcFj3RwhhJgQPB4PLS0tzJ07lylTplzx+4ALi5qaGmw221g3QwghJqSSkhKMRuMV5QEXFlFRUcDFDhsMhjFujRBCTAwulwubzeb9DL1cwIXF4KUng8FATEzMGLdGCCEmlqtdvpcb3EIIIVRJWAghhFAlYSGEEEKVhIUQQghVEhZCCBEASkpKmDNnDkFBQcyZM4eSkpIRff+Amw0lhBCTTUlJCRkZGXR1dQFQV1dHRkYGwIitO5ORhRBCTHC5ubneoBjU1dVFbm7uiP0Nv8Ji165dJCYmYrVa2blzJwBVVVVYrVYSEhLYtm2bt+6xY8dIS0sjMTGR3Nxc+vv7AWhsbMRms5GUlMSqVavo7OwEwO12k5GRQXJyMjabjZaWFgB6e3vJzMwkOTmZ1NRUTpw4MWKdFkKIQHLq1KnrKr8RqmFRVVXFG2+8wd69eyktLeXPf/4zr7/+Ojk5ORQVFeFwOKipqeHAgQMAZGZmkp+fz759+1AUhT179gCwceNGli9fjtPpZO7cuRQVFQFQWFiI0WikoqKCpUuXUlBQAEBxcTFhYWFUVFSQk5NDdnb2iHVaCCECyezZs6+r/EaohsVHH33EQw89RHh4OMHBwXzhC1/g5ZdfJi4ujtjYWLRaLVarFafTSUNDA93d3cybNw+AtLQ0nE4nfX19HD58mMTERJ9ygMrKSqxWKwApKSkcPHiQvr4+KisrWbx4MQALFiygra2NxsbGEeu4EEIEioKCAqZOnepTNnXqVO8/vkeCaljEx8fz7rvvcv78eXp6enj77bf58MMPffYP0ev1NDU10dzc7FMeFRVFU1MT586dIzw8HK1W61MO+LxGq9USHh5OW1vbsO/lcrl82uZ2u6mvr/f5uryOEEIEOpvNxq5du4iLi0Oj0RAXF8euXbtGdFNV1dlQCxcuJC0tjRUrVjB9+nQWLlzIu+++i0aj8dZRFAWNRsPAwMCw5YPfh7r856GvCQoKuuI1g+VD7d69mx07dvjXUyGECGA2m21Ud9xWDYuOjg4SEhL42te+BsDPf/5z7r//fu+NaICWlhb0ej0Gg8GnvLW1Fb1eT2RkJO3t7Xg8HoKDg7314eKopLW1FYPBQH9/P52dnUyfPp0ZM2bQ3NzsveY2+F5Dpaenk5qa6lM2uHOiEEKIkaN6Gaq+vp5/+7d/o7+/n/b2dl555RW+853vcPLkSerq6vB4PJSXl2MymZg1axahoaFUV1cDUFZWhslkQqfTYTQacTgcAJSWlmIymQAwm82UlpYC4HA4MBqN6HQ6zGYzZWVlABw5coTQ0FBmzpzp07aIiAhiYmJ8vmRbciGEGHmqI4t77rmHhIQEFi9ejMfj4atf/Srz589n8+bNrF69mp6eHsxmM0lJSQDY7Xby8vLo6OggPj6elStXArBhwwaysrLYuXMn0dHRbN26FYC1a9eSlZWFxWJh2rRp2O12AFasWEF+fj4Wi4WQkBC2bNkyWsdACCGECo2iKMpYN2Ik1dfXs2jRIvbv3y/PsxBCCD+pfXbKCm4hhBCqJCyEEEKokrAQQgihSsJCCCGEKgkLIYQQqiQshBBCqJKwEEIIoUrCQgghhCoJCyGEEKokLIQQQqiSsBBCCKFKwkIIIYQqCQshhBCqJCyEEEKokrAQQgihSsJCCCECxPmTJ3GfOjUq7y1hIYQQE1hveztvPPEEdo2Gn3/60+yKi+O/fvazEf87foVFWVkZFosFi8XCCy+8AEBVVRVWq5WEhAS2bdvmrXvs2DHS0tJITEwkNzeX/v5+ABobG7HZbCQlJbFq1So6OzsBcLvdZGRkkJycjM1mo6WlBYDe3l4yMzNJTk4mNTWVEydOjGjHhRBiIvv45ZexazRsj4jg4z17fH735507R/zvqYbFhQsXKCgooLi4mLKyMo4cOcLbb79NTk4ORUVFOBwOampqOHDgAACZmZnk5+ezb98+FEVhz6VObNy4keXLl+N0Opk7dy5FRUUAFBYWYjQaqaioYOnSpRQUFABQXFxMWFgYFRUV5OTkkJ2dPeKdF0KIiaTT5eI3Dz6IXaPhjX/916vWe/ytt0b8b6uGhcfjYWBggAsXLtDf309/fz/h4eHExcURGxuLVqvFarXidDppaGigu7ubefPmAZCWlobT6aSvr4/Dhw+TmJjoUw5QWVmJ1WoFICUlhYMHD9LX10dlZSWLFy8GYMGCBbS1tdHY2DjiB0AIIcYzRVGoLizErtGwMzqaxqqq4StqNCx75x3WKwq36fUj3g6tWoXw8HDWrl1LcnIyYWFhLFiwgObmZqKiorx19Ho9TU1NV5RHRUXR1NTEuXPnCA8PR6vV+pQDPq/RarWEh4fT1tY27Hu5XC5mzpzpLXO73bjdbp/2ulyuGzkOQggxrpw9fpxXEhNpV7lhPf+ZZzBt3kywTjeq7VENi+PHj7N3717+8Ic/MG3aNNavX09tbS0ajcZbR1EUNBoNAwMDw5YPfh/q8p+HviYoKOiK1wyWD7V792527NjhX0+FEGKcG+jv52BWFkd+9KNr1psWG8vj+/Zxx7333qKW+REW7777LgsXLuSOO+4ALl5C+sUvfkFwcLC3TktLC3q9HoPB4L1BDdDa2operycyMpL29nY8Hg/BwcHe+nBxVNLa2orBYKC/v5/Ozk6mT5/OjBkzaG5uZvbs2T7vNVR6ejqpqak+ZS6XC5vNdoOHQwghbr2G997jdyYTysDANev9y9atzP/Od676j+3RpHrP4p577qGqqoquri4UReHtt9/mvvvu4+TJk9TV1eHxeCgvL8dkMjFr1ixCQ0Oprq4GLs6iMplM6HQ6jEYjDocDgNLSUkwmEwBms5nS0lIAHA4HRqMRnU6H2WymrKwMgCNHjhAaGupzCQogIiKCmJgYny+DwTBiB0cIIUZLb0cHbyxbhl2j4bcPPXTVoJi5cCFPNzayXlEwrls3JkEBfowsHnroIT766CPS0tLQ6XR89rOfZfXq1Tz44IOsXr2anp4ezGYzSUlJANjtdvLy8ujo6CA+Pp6VK1cCsGHDBrKysti5cyfR0dFs3boVgLVr15KVlYXFYmHatGnY7XYAVqxYQX5+PhaLhZCQELZs2TJax0AIIW6Zv+7dy+uPP65aL+X3v+eea8x4utU0iqIoY92IkVRfX8+iRYvYv38/MTExY90cIYSgs6mJ1x97jIb33rtmvX9aupSkX/yCkGnTblHL/j+1z07VkYUQQojrpygKf/rJT3h77VrVuk8cOEDspUvz45WEhRBCjKC2jz/mlcRE3HV116w3f906TC+8MOpTXkeKhIUQQtykgf5+3snJ4fAPf3jNeuGzZvH4m2/yqf/xP25Ry0aOhIUQQtyghqqqi1NePZ5r1vuXH/2I+WM4k2kkSFgIIcR16O3s5M2nnuL4b397zXrRDzzAkldfJfyyKf8TlYSFEEL44W+vvUZZWppqvZTf/pZ7li27BS26tSQshBDiKjqbmnhj6VLq33nnmvXufuwxkn75S0IjIm5Ry249CQshhBhCURRevPde2j7+WLXuE5WVxJrNt6BVY0/CQgghgBP/+Z+8lpKiWu9/rl2L+Yc/nDBTXkeKhIUQYtLq7+mhcMoU1XrhM2denPIaH38LWjU+SVgIISadI9u2UfnMM6r1Pp2SQurrr0/oKa8jRcJCCDEpdLW0UOTnE+RsH3xA9P33j3KLJhYJCyFEQKv42tf4y69+pVrvzkcf5bH//M/Rb9AEJWEhhAg4rX/5C7+aO9evuhmnThERGzvKLZr4JCyEEAFBURR+NXcuZz/6SLXu5/PyeOgHP7gFrQocEhZCiAntpNPJ3uRkv+quaW8nJDx8lFsUmCQshBATjqe3l22hoX7VtZSUcO/y5aPcosCnGhYvv/wyv/71r70/19fXs2TJEr74xS+yadMmenp6SE5OZt26dQAcO3aM3NxcOjs7MRqNbNy4Ea1WS2NjI5mZmZw9e5Y777wTu93ObbfdhtvtZv369Zw+fZrIyEgKCwuJioqit7eX3NxcampqmDJlCna7nbvuumv0joQQYtz7cPt2vx4mNOUf/oFvtbaiCQq6Ba2aHFSP5NKlSykrK6OsrAy73c4dd9zBU089RU5ODkVFRTgcDmpqajhw4AAAmZmZ5Ofns2/fPhRFYc+ePQBs3LiR5cuX43Q6mTt3LkVFRQAUFhZiNBqpqKhg6dKlFBQUAFBcXExYWBgVFRXk5OSQnZ09WsdACDGOdbW2YtdosGs0qkGx/P33Wa8ofLutTYJihF3X0fyP//gP1q1bx+nTp4mLiyM2NhatVovVasXpdNLQ0EB3dzfz5s0DIC0tDafTSV9fH4cPHyYxMdGnHKCyshKr1QpASkoKBw8epK+vj8rKShYvXgzAggULaGtro7GxcaT6LYQY5/Y99RR2jYaiqKhr1puTmMh6RWG9ojDz85+/Ra2bfPy+Z1FVVUV3dzfJycmUl5cTNeQE6vV6mpqaaG5u9imPioqiqamJc+fOER4ejlar9SkHfF6j1WoJDw+nra1t2PdyuVzMHLI3vNvtxu12+7TT5XJdT/+FEOPI2WPHeNHPp8g9VVvL7XFxo9wiMcjvsPjd737H1772NQAGBgZ8lr8rioJGo7lq+eD3oa62fF5RFIKCgq54zWD5ULt372bHjh3+dkEIMQ4pisJL8+bRcvSoat0HsrP5wvPP34JWicv5FRa9vb0cPnyYzZs3A2AwGGhpafH+vqWlBb1ef0V5a2srer2eyMhI2tvb8Xg8BAcHe+vDxVFJa2srBoOB/v5+Ojs7mT59OjNmzKC5uZnZs2f7vNdQ6enppKam+pS5XC5sNtsNHAohxK10ct8+9iYl+VV3jdtNyLRpo9wicS1+3bP4+OOPmTNnDlOnTgXgvvvu4+TJk9TV1eHxeCgvL8dkMjFr1ixCQ0Oprq4GoKysDJPJhE6nw2g04nA4ACgtLcVkMgFgNpspLS0FwOFwYDQa0el0mM1mysrKADhy5AihoaE+l6AAIiIiiImJ8fkyGAw3f1SEEKPC09vrvVmtFhSPFhd770VIUIw9v0YWp0+f9vkQDg0NZfPmzaxevZqenh7MZjNJl0683W4nLy+Pjo4O4uPjWblyJQAbNmwgKyuLnTt3Eh0dzdatWwFYu3YtWVlZWCwWpk2bht1uB2DFihXk5+djsVgICQlhy5YtI9pxIcSt8+GOHby9erVqvZCICL7d1kZQcPAtaJW4HhpFUZSxbsRIqq+vZ9GiRezfv5+YmJixbs6EU1JSQm5uLqdOnWL27NkUFBTIZT1xQy6cPctPP/Upv+r+7/feY9b/+l+j3CJxLWqfnbKCW3iVlJSQkZFBV1cXAHV1dWRkZABIYAi/vbZ4MSfeeEO1XtyXvsTSN9+8BS0SI0HCQnjl5uZ6g2JQV1cXubm5Ehbimhree4/fPvSQX3WfOnmS2+fMGd0GiREnYSG8Tp06dV3lYnJTFIUf+blKesGzz2J+4YVRbpEYTRIWwmv27NnU1dUNWy7EoD/v2sVb3/ymX3VXf/IJoRERo9wicStIWAivgoICn3sWAFOnTvXu1yUmr/7ubgrDwvyqO/+ZZ3j4Rz8a5RaJW03CQvjMgIqMjCQsLIy2tjaZDSVwfv3r1Pzyl37VXdfbS7BON8otEmNFtmWc5AZnQNXV1aEoCmfPnuXChQsUFxdTW1t7zaAoKSlhzpw5BAUFMWfOHEpKSm5hy8VoaW9o8C6cUwsKS0mJd+GcBEVgk5HFJHejM6Bkmm3g2TVnDu5h7lkNZ31gLc8SfpCRxSR3ozOgrhUyYuJoqKryjiLUgmJFdbV3FCEmHxlZTHI3OgNKptlOXNcz5fVTn/0sX/VjN1gR+GRkMckVFBR4N4gc5M8MqKuFiUyzHb+O/vzn2DUav4JiVVMT6xVFgkJ4SVhMcjabjV27dhEXF4dGoyEuLo5du3ap3ne40ZARt1Z/T4/3MtObTz11zbqfW73ae5nptsseByCEXIYS2Gy2674pPVhfNh0cn97MyODo//2/ftWVKa/CHxIW4obdSMiI0dNx5gw/u+yZL1eT/NJLxK9YMcotEoFELkMJH7J2YuIZvMzkT1AMXmaSoBDXS0YWwkvWTkwcf3c4eNVi8avuVw4fxmA0jnKLRKCTsBBeskX5+GfXaPyqp505k+80NIxya8Rk4tdlqLfffpu0tDSSk5N57rnnAKiqqsJqtZKQkMC2bdu8dY8dO0ZaWhqJiYnk5ubS398PQGNjIzabjaSkJFatWkVnZycAbrebjIwMkpOTsdlstLS0ANDb20tmZibJycmkpqZy4sSJEe24uJKsnRif3s3P915qUrMRyAQKx+iGtVzGDFyqYXH69Gk2bNhAUVERr7/+Oh999BEHDhwgJyeHoqIiHA4HNTU1HDhwAIDMzEzy8/PZt28fiqKwZ88eADZu3Mjy5ctxOp3MnTuXoqIiAAoLCzEajVRUVLB06VLv1Mvi4mLCwsKoqKggJyeH7Ozs0ToG4pLxtnZiMn/w9Hd3ewPijz/4wTXr1nExIDKBjktlYxHwl+8zNngZczKdt0CmGhZvvfUWjz76KAaDAZ1Ox7Zt2wgLCyMuLo7Y2Fi0Wi1WqxWn00lDQwPd3d3MmzcPgLS0NJxOJ319fRw+fJjExESfcoDKykqsVisAKSkpHDx4kL6+PiorK1m8eDEACxYsoK2tjcbGxtE4BuKS8bR2YrJ+8Pz6gQewazR+bQf+nQsX2BEXx45hfjcWAS9bwAQ21bCoq6vD4/Hw9NNPs2TJEn7zm9/Q3NxMVFSUt45er6epqemK8qioKJqamjh37hzh4eFotVqfcsDnNVqtlvDwcNra2oZ9L5fL5dM2t9tNfX29z9fldYT/bnSB3miYTB88n9TWekcRrkOHrll34YYN3hlN2ilTxlXAy2XMwKZ6g9vj8XDkyBGKi4uZOnUqq1atYsqUKWiGXD9VFAWNRsPAwMCw5YPfh7r856GvCQoKuuI1g+VD7d69mx07hvt3lbhR42XtxGT44PH3ZjVcfZfX8bQ4Up60GNhUw+JTn/oUCxcuJDIyEoAvfvGLOJ1OgoODvXVaWlrQ6/UYDAbvDWqA1tZW9Ho9kZGRtLe34/F4CA4O9taHi6OS1tZWDAYD/f39dHZ2Mn36dGbMmEFzc7P3/2iD7zVUeno6qampPmUul2tcfNiJmxOoHzwn9+1jb1KSX3Ufq6jgTj/qjpeAlyctBjbVy1APP/ww7777Lm63G4/HwzvvvENSUhInT570XqIqLy/HZDIxa9YsQkNDqa6uBqCsrAyTyYROp8NoNOJwOAAoLS3FZDIBYDabKS0tBcDhcGA0GtHpdJjNZsrKygA4cuQIoaGhzLxs0VFERAQxMTE+XwaDYcQOjhg74+nyyvUa7sb84GUmf4Ji8DKTP0Exnoyny5hi5GkURX1z+ldeeYVf/epX9PX18eCDD5KXl8cHH3zApk2b6OnpwWw2k52djUaj4fjx4+Tl5dHR0UF8fDybNm0iJCSEhoYGsrKyOHv2LNHR0WzdupXbb7+d8+fPk5WVxenTp5k2bRp2u52YmBh6enrIz8+npqaGkJAQnnvuOeLj41U7VF9fz6JFi9i/fz8xMTEjcpDE2Bj6uNeJsvfU0IWNXwQS/XzdN/7+d6bfeedoNk2Ia1L77PQrLCYSCQsxlj4dF8e/+XlfZcb8+aw4cmSUWySEf9Q+O2VvKCFGwG8fegi7RuNXUKzt6mK9okhQjGOTeY3P1UhYCB/yH4n/3KdPe+9FNLz33jXrHo6I8N6L0PmxhkKMncm6xkeN7A0lvGQjQf9cz5TXTC7emN91accCMf7JHmnDk5GF8JpMC+GuV93+/X7vz/QP3/0uO+LieFZmBE1Ik2GNz42QkYXwkv9IrnSjC+e+brePRnPELRCoa3xulowshNd420hwrHywaZPfo4hv/Pd/e+9FiMAwkdf4jCYZWQivybwC19Pby7bQUL/qRv3zP5P+5z+PcovEWBlPW6iMJxIWk9zlC9/S09NxOByT5j+S3z/8MKcrK/2qu7azE91l/+IUgWm8bKEynkhYTGLDzX7avXt3wN+Qba+v5//ExvpVd8Gzz2J+4YVRbpEQ45/cs5jERnr203hfozF4H8KfoPjuwADrFUWCQohLZGQxiY3k7Kfxukbj1B/+wJ5HHvGr7pdLS/nHJUtGuUVCTEwyspjErmf2k9qoYbyt0RgcRfgTFIOzmSQohLg6CYtJzN8pgv5sfzAe1mgc+uEP/Z7y+vW//lWmvApxHeQy1CTm7xRBf7Y/GKuFTJ6+PraFhPhVN/Kee3jy2LFRbY8QgUrCYpLzZ4qgP6OGW71G4+WEBOreesuvums6Ogi57bZRaYcQk4WEhVDlz6jhVixk6mhs5GezZvlVd/4zz/Dwj340Yn9biMlOwkKo8nfUMFoLma5nf6bvDgyguY76Qgj/+BUWK1asoK2tDa32YvXvf//7dHZ2eh+rmpyczLp16wA4duwYubm5dHZ2YjQa2bhxI1qtlsbGRjIzMzl79ix33nkndrud2267Dbfbzfr16zl9+jSRkZEUFhYSFRVFb28vubm51NTUMGXKFOx2O3fdddfoHQlxVWOx/UHL0aPsvu8+v+ou3ruXf0pLG7W2CCH8mA2lKAq1tbWUlZV5vz7zmc+Qk5NDUVERDoeDmpoaDhw4AEBmZib5+fns27cPRVHYs2cPABs3bmT58uU4nU7mzp1L0aX9/QsLCzEajVRUVLB06VLvv1aLi4sJCwujoqKCnJwcsrOzR+sYCD/YbDZqa2sZGBigtrZ21IJicDaTP0ExOJtJgkKI0acaFn//+98BePLJJ1m8eDG//vWvOXr0KHFxccTGxqLVarFarTidThoaGuju7mbevHkApKWl4XQ66evr4/DhwyQmJvqUA1RWVmK1WgFISUnh4MGD9PX1UVlZyeLFiwFYsGABbW1tNDY2jvgBEGPv45df9nvK69eOHZMpr0KMAdXLUG63m4ULF/Lv//7v9PX1sXLlSr7xjW8QFRXlraPX62lqaqK5udmnPCoqiqamJs6dO0d4eLj3MtZgOeDzGq1WS3h4OG1tbcO+l8vlYubMmT5tc7vdPu11uVw3chzELTbQ389Wnc6vurMfeYR/3b9/lFskhLgW1bD43Oc+x+c+9znvz48//jjbt29n/vz53jJFUdBoNAxcdnNxsHzw+1BXuwmpKApBQUFXvGawfKjdu3ezY8cOtS6IceRgdjaHNm/2q+7ari55XrUQ44RqWBw5coS+vj4WLlwIXPzQnjVrFi0tLd46LS0t6PV6DAaDT3lrayt6vZ7IyEja29vxeDwEBwd768PFUUlraysGg4H+/n46OzuZPn06M2bMoLm52Ts9c/C9hkpPTyc1NdWnzOVyBfSOqRPRhbY2fnrHHX7VfWT7dv7n6tWj3CIhxPVSvWfR3t7Oli1b6OnpoaOjg9dee41nnnmGkydPUldXh8fjoby8HJPJxKxZswgNDaW6uhqAsrIyTCYTOp0Oo9GIw+EAoLS0FJPJBIDZbKa0tBQAh8OB0WhEp9NhNpspKysDLgZWaGiozyUogIiICGJiYny+DAbDiB2cQHa1vZ5GcufY3zz4IHaNxq+gGNzlVYJCiPFJoyjqdwoLCwvZt28fAwMDLF++nPT0dN5//33v1Fmz2Ux2djYajYbjx4+Tl5dHR0cH8fHxbNq0iZCQEBoaGsjKyuLs2bNER0ezdetWbr/9ds6fP09WVhanT59m2rRp2O12YmJi6OnpIT8/n5qaGkJCQnjuueeIj49X7VB9fT2LFi1i//79xMTEjMhBCjSX7xALF9dNpKens3v37ivKr+f5Fi01Nez+7Gf9qvuvf/gDs//lX66r7UKI0aH22elXWEwkEhbq5syZM+yK7KuJi4ujtrb2mnX8XTgXevvtrD5/3u+/LYS4NdQ+O2UF9yR0vTvBXq3+h9u38/batX69x1MnT3L7nDnX9XeFEOOHhMUkdLW9nq5Vf9D1THn9p6VLWXxpUaYQYmKTsJiEhtvr6WoG94Aq/fKX+e9LEw7UrP7kE0IjIm62mUKIcUTCYhIavFmdnp6Ox+O54vfBwcEMDAzwmVmz+Hp9PWe+8hXV97xv1Sq+dGkLFyFE4JGwmKQGA2O4WVEbB3+ur1d9H9nlVYjJQcJiEhu6myx1dXwbwI9LU5aSEu5dvnx0GyeEGFckLCa5M1/5ysWQ8INs3ifE5CVhMQmdOXyYkvvv96tu+tGjRPm5yE4IEbgkLCYJZWCAIoOBC0P27rqa2wwGVp05cwtaJYSYKCQsAtzxPXsof+IJv+qucbsJmTZtlFskhJiIJCwCUF9XFz++7Ta/6qa+/jp3XXr4lBBCXI2ERQCp+v73qdqwQbXe9H/8R77+17/KlFchhN8kLCa49oYG/o+fGyam//nPRP3zP49yi4QQgUjCYoIqS0vjb6+9plrv3uXLsdzEMymEEAL8ePjRZDaSDwIaCa7qauwaDXaNRjUoVrlcrFcUCQohxIiQkcVVXP6AoLq6OjIyMgBu6WNblYEBfhYTQ6cfU1m/sHkzD3zve7egVUKIyUbC4ipyc3Ov2JW1q6uL3NzcWxIWf927l9cff9yvut+5cAHtlCmj3CIhxGTm92WoF154gaysLACqqqqwWq0kJCSwbds2b51jx46RlpZGYmIiubm59Pf3A9DY2IjNZiMpKYlVq1bR2dkJgNvtJiMjg+TkZGw2Gy2XFoz19vaSmZlJcnIyqampnDhxYsQ67K+rPfDneh8cdD36urq8l5nUgmLJa6+xXlFYrygSFEKIUedXWLz//vu8dukaeXd3Nzk5ORQVFeFwOKipqeHAgQMAZGZmkp+fz759+1AUhT2XHnyzceNGli9fjtPpZO7cuRRd2sq6sLAQo9FIRUUFS5cupaCgAIDi4mLCwsKoqKggJyeH7OzsEe+4mqEP/PGn/Gb8saAAu0ajujbi9jvv5LsDA6xXFO7+8pdHvB1CCHE1qmFx/vx5tm3bxtNPPw3A0aNHiYuLIzY2Fq1Wi9Vqxel00tDQQHd3N/PmzQMgLS0Np9NJX18fhw8fJjEx0accoLKyEuulBWEpKSkcPHiQvr4+KisrWbx4MQALFiygra2NxsbGEe/8tRQUFDB16lSfssEHAY2EjsZG7yji3by8a9Zd+ac/sV5ReOrvf5e1EUKIMaF6zyI/P59169Zx5tIN1ubmZqKiory/1+v1NDU1XVEeFRVFU1MT586dIzw8HK1W61N++XtptVrCw8Npa2sb9r1cLhczZ870aZvb7cbtdvuUuVyu6zoAVzN0++5Tp04xe/ZsCgoKbvp+xetLl/LXV15RrfeZJ57A+rvf3dTfEkKIkXLNsHj55ZeJjo5m4cKFvPrqqwAMXPawG0VR0Gg0Vy0f/D7U1f51rCgKQUFBV7xmsPxyu3fvZseOHX5088bYbLYRuZnd9OGHFM+f71fdpxsbCY+Ovum/KYQQI+maYeFwOGhpaWHJkiV88skndHV10dDQQHBwsLdOS0sLer0eg8HgvUEN0Nrail6vJzIykvb2djweD8HBwd76cHFU0traisFgoL+/n87OTqZPn86MGTNobm723h8YfK/Lpaenk5qa6lPmcrlu6dTWq1EUhV2zZ9Pux9PmvvD88zwwBvdlhBDCX9cMixdffNH7v1999VUOHTrExo0bSUhIoK6ujpiYGMrLy3nssceYNWsWoaGhVFdXM3/+fMrKyjCZTOh0OoxGIw6HA6vVSmlpKSaTCQCz2UxpaSlPP/00DocDo9GITqfDbDZTVlaG0WjkyJEjhIaGXnEJCiAiIoKIiIgRPiQ356+vvsrrjz3mV921XV3owsJGuUVCCHHzrnudRWhoKJs3b2b16tX09PRgNptJSkoCwG63k5eXR0dHB/Hx8axcuRKADRs2kJWVxc6dO4mOjmbr1q0ArF27lqysLCwWC9OmTcNutwOwYsUK8vPzsVgshISEsGXLlpHq76jou3CBH192M/xqlrz6KndfNhoSQojxTqMogfWszPr6ehYtWsT+/fuJ8XODvRv1waZNvJOTo1pvWmwsGXV1MpNJCDFuqX12ygru69Rx5gw/G+aS2HBWfPghMz73uVFukRBCjD4JCz+98cQTfHxpkeG13P3YYyzxY2qsEEJMJBIW19DpcrHTz2msTzc0EO7niEMIISYa2aL8MoqiUF1YiF2jUQ2KB3/wA+/+TBIUQohAJiOLIVr/8hd+NXeuar21nZ3o/Jz9JIQQgUDCYogDzz571d8tfuUV/snP9RNCCBFo5DLUEDEPPeTzs9lu9+7yKkEhhJjMZGQxxP1ZWcR/9atow8KYMn36WDdHCCHGDQmLITQajWziJ4QQw5DLUEIIIVRJWAghhFAlYSGEEEKVhIUQQghVEhZCCCFUSVgIIYRQJWEhhBBClYSFEEIIVX6FxY9//GMeffRRLBaL97ncVVVVWK1WEhIS2LZtm7fusWPHSEtLIzExkdzcXPr7+wFobGzEZrORlJTEqlWr6OzsBMDtdpORkUFycjI2m42WlhYAent7yczMJDk5mdTUVE6cODGiHRdCCOE/1bA4dOgQf/zjH3n99dfZu3cvxcXFHD9+nJycHIqKinA4HNTU1HDgwAEAMjMzyc/PZ9++fSiKwp5LDwzauHEjy5cvx+l0MnfuXIqKigAoLCzEaDRSUVHB0qVLKSgoAKC4uJiwsDAqKirIyckhOzt7tI6BEEIIFaphcf/99/PSSy+h1Wo5e/YsHo8Ht9tNXFwcsbGxaLVarFYrTqeThoYGuru7mTdvHgBpaWk4nU76+vo4fPgwiYmJPuUAlZWVWK1WAFJSUjh48CB9fX1UVlayePFiABYsWEBbWxuNjY2jcQyEEEKo8GtvKJ1Ox/bt2/nlL39JUlISzc3NREVFeX+v1+tpamq6ojwqKoqmpibOnTtHeHg4Wq3WpxzweY1WqyU8PJy2trZh38vlcjFzyEOG3G43brfbp60ul+t6j4EQQggVfm8kuGbNGp566imefvppamtr0Wg03t8pioJGo2FgYGDY8sHvQ13+89DXBAUFXfGawfKhdu/ezY4dO/ztghBCiBukGhYnTpygt7eXe++9l7CwMBISEnA6nQQHB3vrtLS0oNfrMRgM3hvUAK2trej1eiIjI2lvb8fj8RAcHOytDxdHJa2trRgMBvr7++ns7GT69OnMmDGD5uZmZs+e7fNeQ6Wnp5OamupT5nK5sNlsN35EhBBCXEH1nkV9fT15eXn09vbS29vL/v37WbZsGSdPnqSurg6Px0N5eTkmk4lZs2YRGhpKdXU1AGVlZZhMJnQ6HUajEYfDAUBpaSkmkwkAs9lMaWkpAA6HA6PRiE6nw2w2U1ZWBsCRI0cIDQ31uQQFEBERQUxMjM+XwWAYsYMjhBDiItWRhdls5ujRo3z5y18mODiYhIQELBYLkZGRrF69mp6eHsxmM0lJSQDY7Xby8vLo6OggPj6elStXArBhwwaysrLYuXMn0dHRbN26FYC1a9eSlZWFxWJh2rRp2O12AFasWEF+fj4Wi4WQkBC2bNkyWsdACCGECo2iKMpYN2Ik1dfXs2jRIvbv309MTMxYN0cIISYEtc9OWcEthBBClYSFEEIIVRIWQgghVElYCCGEUCVhIYQQQpWEhRBCCFUSFkIIIVRJWAghhFAlYSGEEEKVhIUQQghVEhZCCCFUSVgIIYRQJWEhhBBClYSFEEIIVRIWQgghVElYCCGEUCVhIYQQQpVfYbFjxw4sFgsWi8X7eNOqqiqsVisJCQls27bNW/fYsWOkpaWRmJhIbm4u/f39ADQ2NmKz2UhKSmLVqlV0dnYC4Ha7ycjIIDk5GZvNRktLCwC9vb1kZmaSnJxMamoqJ06cGNGOCyGE8J9qWFRVVfHuu+/y2muvUVpayl/+8hfKy8vJycmhqKgIh8NBTU0NBw4cACAzM5P8/Hz27duHoijs2bMHgI0bN7J8+XKcTidz586lqKgIgMLCQoxGIxUVFSxdupSCggIAiouLCQsLo6KigpycHLKzs0frGAghhFChGhZRUVFkZWUREhKCTqfjrrvuora2lri4OGJjY9FqtVitVpxOJw0NDXR3dzNv3jwA0tLScDqd9PX1cfjwYRITE33KASorK7FarQCkpKRw8OBB+vr6qKysZPHixQAsWLCAtrY2GhsbR+MYCCGEUKFVq3D33Xd7/3dtbS0VFRV85StfISoqyluu1+tpamqiubnZpzwqKoqmpibOnTtHeHg4Wq3WpxzweY1WqyU8PJy2trZh38vlcjFz5kxvmdvtxu12+7TX5XJd1wEQQgihTjUsBv3tb3/jm9/8Js8++yzBwcHU1tZ6f6coChqNhoGBATQazRXlg9+Huvznoa8JCgq64jWD5UPt3r2bHTt2+NsFIYQQN8ivsKiurmbNmjXk5ORgsVg4dOiQ90Y0QEtLC3q9HoPB4FPe2tqKXq8nMjKS9vZ2PB4PwcHB3vpwcVTS2tqKwWCgv7+fzs5Opk+fzowZM2hubmb27Nk+7zVUeno6qampPmUulwubzXZjR0MIIcSwVO9ZnDlzhm9961vY7XYsFgsA9913HydPnqSurg6Px0N5eTkmk4lZs2YRGhpKdXU1AGVlZZhMJnQ6HUajEYfDAUBpaSkmkwkAs9lMaWkpAA6HA6PRiE6nw2w2U1ZWBsCRI0cIDQ31uQQFEBERQUxMjM+XwWAYmSMjhBDCS6MoinKtCs899xx79+71/gsfYNmyZcyZM4dNmzbR09OD2WwmOzsbjUbD8ePHycvLo6Ojg/j4eDZt2kRISAgNDQ1kZWVx9uxZoqOj2bp1K7fffjvnz58nKyuL06dPM23aNOx2OzExMfT09JCfn09NTQ0hISE899xzxMfHq3aovr6eRYsWsX//fmJiYm7+CAkhxCSg9tmpGhYTjYSFEEJcP7XPTlnBLYQQQpWEhRBCCFUSFkIIIVRJWAxRUlLCnDlzCAoKYs6cOZSUlIx1k4QQYlzwe1FeoCspKSEjI4Ouri4A6urqyMjIAJB1G0KISU9GFpfk5uZ6g2JQV1cXubm5Y9QiIYQYPyQsLjl16tR1lQshxGQiYXHJ0EWH/pQLIcRkImFxSUFBAVOnTvUpmzp1qvf5GkIIMZlJWFxis9nYtWsXcXFxaDQa4uLi2LVrl9zcFkIIZDaUD5vNJuEghBDDkJGFEEIIVRIWQgghVElYCCGEUCVhIYQQQlXA3eD2eDzAxcerCiGE8M/gZ+bgZ+jlAi4sBp8BLrOahBDi+rW0tBAXF3dFecA9Ka+7u5uamho8Hg8rV66kpKQkIJ/L7XK5sNls0r8JSvo3sQVi/zweDy0tLcydO5cpU6Zc8fuAG1lMmTIFo9FIfX09AAaDIaAfryr9m9ikfxNboPVvuBHFILnBLYQQQpWEhRBCCFUSFkIIIVQFbFhERETw7W9/m4iIiLFuyqiQ/k1s0r+JLdD7N5yAmw0lhBBi5AXsyEIIIcTIkbAQQgihakKGRUdHBykpKd61FNnZ2SQkJLBkyRKWLFnCW2+9BcCxY8dIS0sjMTGR3Nxc+vv7AWhsbMRms5GUlMSqVavo7Owcs75cbseOHVgsFiwWC1u2bAGgqqoKq9VKQkIC27Zt89YNlP4F0vkD+PGPf8yjjz6KxWLhxRdfBALrHA7Xv0A7hy+88AJZWVlAYJ27m6JMMP/1X/+lpKSkKPHx8crp06cVRVGUlJQUpamp6Yq6FotF+dOf/qQoiqJkZ2crJSUliqIoSkZGhlJeXq4oiqLs2LFD2bJly61pvIr33ntPeeKJJ5Senh6lt7dXWblypfLGG28oZrNZOXXqlNLX16c8+eSTSmVlpaIogdG/N998M2DOn6IoygcffKAsW7ZM6evrUy5cuKA8/PDDyrFjxwLmHA7XvxMnTgTUOayqqlIeeOAB5Xvf+55y4cKFgDl3N2vCjSz27NnDhg0b0Ov1AFy4cIHGxkZycnKwWq1s376dgYEBGhoa6O7uZt68eQCkpaXhdDrp6+vj8OHDJCYm+pSPB1FRUWRlZRESEoJOp+Ouu+6itraWuLg4YmNj0Wq1WK1WnE5nwPSvsbExYM4fwP33389LL72EVqvl7NmzeDwe3G53wJzD4fo3ZcqUgDmH58+fZ9u2bTz99NMAHD16NGDO3c2acGFRUFCA0Wj0/tza2srnP/95nn/+efbs2cORI0d45ZVXaG5uJioqylsvKiqKpqYmzp07R3h4OFqt1qd8PLj77ru9/+erra2loqICjUbj0w+9Xk9TU1PA9O8LX/hCwJy/QTqdju3bt2OxWFi4cOEVfZnI5xCu7F9/f3/AnMP8/HzWrVvnnRIbaOfuZky4sLhcbGwsP/3pT9Hr9YSFhbFixQoOHDjAwMAAGo3GW09RFDQajff7UJf/PNb+9re/8eSTT/Lss88SGxs7bD8CpX+f/vSnA+78AaxZs4b333+fM2fOUFtbG3DncGj/3n///YA4hy+//DLR0dEsXLjQW3a1Pky0vo2ECb+R4Mcff0xtba132KcoClqtFoPB4N2uHC6OQPR6PZGRkbS3t+PxeAgODqalpcV7SWs8qK6uZs2aNeTk5GCxWDh06JBPPwbbGyj9C7Tzd+LECXp7e7n33nsJCwsjISEBp9NJcHCwt85EPofD9c/hcDB9+vQJfw4dDgctLS0sWbKETz75hK6uLhoaGgLm3N2sCT+yUBSF559/nk8++YS+vj5+//vf86UvfYlZs2YRGhpKdXU1AGVlZZhMJnQ6HUajEYfDAUBpaSkmk2ksu+B15swZvvWtb2G327FYLADcd999nDx5krq6OjweD+Xl5ZhMpoDpXyCdP4D6+nry8vLo7e2lt7eX/fv3s2zZsoA5h8P1b8GCBQFxDl988UXKy8spKytjzZo1PPLII/z85z8PmHN3sybsCu5HHnmEl156iZiYGEpKSigpKaG/v5+EhATWr18PwPHjx8nLy6Ojo4P4+Hg2bdpESEgIDQ0NZGVlcfbsWaKjo9m6dSu33377GPcInnvuOfbu3cvs2bO9ZcuWLWPOnDls2rSJnp4ezGYz2dnZaDSagOnfwMBAQJy/QT/5yU+oqKggODiYhIQEVq9ezfvvvx8Q5xCG71+g/Dc46NVXX+XQoUNs3rw5oM7dzZiwYSGEEOLWmfCXoYQQQow+CQshhBCqJCyEEEKokrAQQgihSsJCCCGEKgkLIYQQqiQshBBCqJKwEEIIoer/ATrkV5MV18ZLAAAAAElFTkSuQmCC",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot regression line \n",
"plt.scatter(test_dataset['area'], test_dataset['price'], color='black')\n",
"plt.plot(test_dataset['area'], test_dataset['y_pred'], color='darkred', linewidth=3);"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"image/png": "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YsHkyZOxf/9+3HvvvVi4cCFee+017N69G//93/+NjRs34uuvv8aBAwdQXFyMPXv2YNu2bbh69arLj5OoO2z5ELnJvffei4iICBgMBkRGRqKurg6TJk3q8TXp6ekICAgAAKSlpeHgwYOYN28eACAmJgYAcPbsWZw/fx5Lly61v85kMuH06dOoqqpCfHw8AgMDAQCzZ8/Gli1bXHF4RD1i8iFyo47Wz1133YW5c+fecDr7DpIk2f9fXDeVfcdEm7IsIygoyD75I9A+83BQUBDy8vLQeUatzu9HpCQ+diNyo4SEBJw5cwb79+/H7Nmzf3b/oqIimM1mtLW1IT8/H5MnT+6yT2RkJHx9fe3J56effsL06dNRXl6O2NhY7Nu3D0ajETabzSFBESmJLR8iN9JqtUhISEBDQwMGDBjws/v7+vriqaeegtFoREJCQrcJS6vV4u2330Zubi42bNgAq9WK7OxsPPjggwDalySYPXs2goODcc899+Dy5cu9flxEP4ezWhO5UUtLC+bNm4fly5dj3LhxPe67ePFi3H333fi3f/s3ZYIjciG2fIjc5PPPP8drr72GJ598EuPGjcM//vEPe7fr63U8SiPqL9jyISIixbHDARERKY7Jh4iIFMfkQ0REimPyISIixTH5EBGR4ph8iIhIcf8fLZGyKgdY2EIAAAAASUVORK5CYII=",
"text/plain": [
""
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"sns.residplot(x=\"y_pred\", y=\"price\", data=test_dataset, scatter_kws={\"s\": 80});"
]
},
{
"cell_type": "code",
"execution_count": 26,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"text/plain": [
"119345.88525637302"
]
},
"execution_count": 26,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# RMSE\n",
"rmse(test_dataset['price'], test_dataset['y_pred'])"
]
},
{
"cell_type": "markdown",
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"source": [
"## Multiple regression"
]
},
{
"cell_type": "code",
"execution_count": 27,
"metadata": {
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [],
"source": [
"lm_m = smf.ols(formula='price ~ area + bed + bath + year_built + cooling + lot', data=train_dataset).fit()"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {
"scrolled": true,
"slideshow": {
"slide_type": "slide"
}
},
"outputs": [
{
"data": {
"text/html": [
"\n",
"OLS Regression Results\n",
"\n",
" Dep. Variable: | price | R-squared: | 0.626 | \n",
"
\n",
"\n",
" Model: | OLS | Adj. R-squared: | 0.595 | \n",
"
\n",
"\n",
" Method: | Least Squares | F-statistic: | 19.83 | \n",
"
\n",
"\n",
" Date: | Wed, 05 Jan 2022 | Prob (F-statistic): | 1.86e-13 | \n",
"
\n",
"\n",
" Time: | 22:37:42 | Log-Likelihood: | -1039.1 | \n",
"
\n",
"\n",
" No. Observations: | 78 | AIC: | 2092. | \n",
"
\n",
"\n",
" Df Residuals: | 71 | BIC: | 2109. | \n",
"
\n",
"\n",
" Df Model: | 6 | | | \n",
"
\n",
"\n",
" Covariance Type: | nonrobust | | | \n",
"
\n",
"
\n",
"\n",
"\n",
" | coef | std err | t | P>|t| | [0.025 | 0.975] | \n",
"
\n",
"\n",
" Intercept | -2.944e+06 | 2.26e+06 | -1.302 | 0.197 | -7.45e+06 | 1.56e+06 | \n",
"
\n",
"\n",
" cooling[T.other] | -1.021e+05 | 3.67e+04 | -2.778 | 0.007 | -1.75e+05 | -2.88e+04 | \n",
"
\n",
"\n",
" area | 111.8295 | 25.915 | 4.315 | 0.000 | 60.156 | 163.503 | \n",
"
\n",
"\n",
" bed | 5121.5208 | 3.1e+04 | 0.165 | 0.869 | -5.68e+04 | 6.7e+04 | \n",
"
\n",
"\n",
" bath | 2.678e+04 | 2.94e+04 | 0.910 | 0.366 | -3.19e+04 | 8.55e+04 | \n",
"
\n",
"\n",
" year_built | 1491.1176 | 1157.430 | 1.288 | 0.202 | -816.732 | 3798.968 | \n",
"
\n",
"\n",
" lot | 3.491e+05 | 8.53e+04 | 4.094 | 0.000 | 1.79e+05 | 5.19e+05 | \n",
"
\n",
"
\n",
"\n",
"\n",
" Omnibus: | 27.108 | Durbin-Watson: | 1.919 | \n",
"
\n",
"\n",
" Prob(Omnibus): | 0.000 | Jarque-Bera (JB): | 112.999 | \n",
"
\n",
"\n",
" Skew: | -0.874 | Prob(JB): | 2.90e-25 | \n",
"
\n",
"\n",
" Kurtosis: | 8.632 | Cond. No. | 4.57e+05 | \n",
"
\n",
"
Notes:
[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.
[2] The condition number is large, 4.57e+05. This might indicate that there are
strong multicollinearity or other numerical problems."
],
"text/plain": [
"\n",
"\"\"\"\n",
" OLS Regression Results \n",
"==============================================================================\n",
"Dep. Variable: price R-squared: 0.626\n",
"Model: OLS Adj. R-squared: 0.595\n",
"Method: Least Squares F-statistic: 19.83\n",
"Date: Wed, 05 Jan 2022 Prob (F-statistic): 1.86e-13\n",
"Time: 22:37:42 Log-Likelihood: -1039.1\n",
"No. Observations: 78 AIC: 2092.\n",
"Df Residuals: 71 BIC: 2109.\n",
"Df Model: 6 \n",
"Covariance Type: nonrobust \n",
"====================================================================================\n",
" coef std err t P>|t| [0.025 0.975]\n",
"------------------------------------------------------------------------------------\n",
"Intercept -2.944e+06 2.26e+06 -1.302 0.197 -7.45e+06 1.56e+06\n",
"cooling[T.other] -1.021e+05 3.67e+04 -2.778 0.007 -1.75e+05 -2.88e+04\n",
"area 111.8295 25.915 4.315 0.000 60.156 163.503\n",
"bed 5121.5208 3.1e+04 0.165 0.869 -5.68e+04 6.7e+04\n",
"bath 2.678e+04 2.94e+04 0.910 0.366 -3.19e+04 8.55e+04\n",
"year_built 1491.1176 1157.430 1.288 0.202 -816.732 3798.968\n",
"lot 3.491e+05 8.53e+04 4.094 0.000 1.79e+05 5.19e+05\n",
"==============================================================================\n",
"Omnibus: 27.108 Durbin-Watson: 1.919\n",
"Prob(Omnibus): 0.000 Jarque-Bera (JB): 112.999\n",
"Skew: -0.874 Prob(JB): 2.90e-25\n",
"Kurtosis: 8.632 Cond. No. 4.57e+05\n",
"==============================================================================\n",
"\n",
"Notes:\n",
"[1] Standard Errors assume that the covariance matrix of the errors is correctly specified.\n",
"[2] The condition number is large, 4.57e+05. This might indicate that there are\n",
"strong multicollinearity or other numerical problems.\n",
"\"\"\""
]
},
"execution_count": 28,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"lm_m.summary()"
]
}
],
"metadata": {
"celltoolbar": "Slideshow",
"interpreter": {
"hash": "463226f144cc21b006ce6927bfc93dd00694e52c8bc6857abb6e555b983749e9"
},
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"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.11"
},
"varInspector": {
"cols": {
"lenName": 16,
"lenType": 16,
"lenVar": 40
},
"kernels_config": {
"python": {
"delete_cmd_postfix": "",
"delete_cmd_prefix": "del ",
"library": "var_list.py",
"varRefreshCmd": "print(var_dic_list())"
},
"r": {
"delete_cmd_postfix": ") ",
"delete_cmd_prefix": "rm(",
"library": "var_list.r",
"varRefreshCmd": "cat(var_dic_list()) "
}
},
"types_to_exclude": [
"module",
"function",
"builtin_function_or_method",
"instance",
"_Feature"
],
"window_display": false
}
},
"nbformat": 4,
"nbformat_minor": 2
}