Praktikum-Machine-Learning/Machine Learning with Python - Regression/ML0101EN-Reg-Mulitple-Linear-Regression-Co2-Adhwa.ipynb

762 lines
106 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<p style=\"text-align:center\">\n",
" <a href=\"https://skills.network\" target=\"_blank\">\n",
" <img src=\"https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/assets/logos/SN_web_lightmode.png\" width=\"200\" alt=\"Skills Network Logo\">\n",
" </a>\n",
"</p>\n",
"\n",
"\n",
"# Multiple Linear Regression\n",
"\n",
"\n",
"Estimated time needed: **15** minutes\n",
" \n",
"\n",
"## Objectives\n",
"\n",
"After completing this lab you will be able to:\n",
"\n",
"* Use scikit-learn to implement Multiple Linear Regression\n",
"* Create a model, train it, test it and use the model\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h1>Table of contents</h1>\n",
"\n",
"<div class=\"alert alert-block alert-info\" style=\"margin-top: 20px\">\n",
" <ol>\n",
" <li><a href=\"#understanding-data\">Understanding the Data</a></li>\n",
" <li><a href=\"#reading_data\">Reading the Data in</a></li>\n",
" <li><a href=\"#multiple_regression_model\">Multiple Regression Model</a></li>\n",
" <li><a href=\"#prediction\">Prediction</a></li>\n",
" <li><a href=\"#practice\">Practice</a></li>\n",
" </ol>\n",
"</div>\n",
"<br>\n",
"<hr>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Importing Needed packages\n"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"import matplotlib.pyplot as plt\n",
"import pandas as pd\n",
"import pylab as pl\n",
"import numpy as np\n",
"%matplotlib inline"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Downloading Data\n",
"To download the data, we will use !wget to download it from IBM Object Storage.\n"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"--2025-10-20 13:46:20-- https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork/labs/Module%202/data/FuelConsumptionCo2.csv\n",
"Resolving cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)... 169.63.118.104, 169.63.118.104\n",
"Connecting to cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud (cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud)|169.63.118.104|:443... connected.\n",
"HTTP request sent, awaiting response... 200 OK\n",
"Length: 72629 (71K) [text/csv]\n",
"Saving to: FuelConsumption.csv\n",
"\n",
"FuelConsumption.csv 100%[===================>] 70.93K --.-KB/s in 0.002s \n",
"\n",
"2025-10-20 13:46:20 (35.1 MB/s) - FuelConsumption.csv saved [72629/72629]\n",
"\n"
]
}
],
"source": [
"!wget -O FuelConsumption.csv https://cf-courses-data.s3.us.cloud-object-storage.appdomain.cloud/IBMDeveloperSkillsNetwork-ML0101EN-SkillsNetwork/labs/Module%202/data/FuelConsumptionCo2.csv"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"\n",
"<h2 id=\"understanding_data\">Understanding the Data</h2>\n",
"\n",
"### `FuelConsumption.csv`:\n",
"We have downloaded a fuel consumption dataset, **`FuelConsumption.csv`**, which contains model-specific fuel consumption ratings and estimated carbon dioxide emissions for new light-duty vehicles for retail sale in Canada. [Dataset source](http://open.canada.ca/data/en/dataset/98f1a129-f628-4ce4-b24d-6f16bf24dd64)\n",
"\n",
"- **MODELYEAR** e.g. 2014\n",
"- **MAKE** e.g. Acura\n",
"- **MODEL** e.g. ILX\n",
"- **VEHICLE CLASS** e.g. SUV\n",
"- **ENGINE SIZE** e.g. 4.7\n",
"- **CYLINDERS** e.g 6\n",
"- **TRANSMISSION** e.g. A6\n",
"- **FUELTYPE** e.g. z\n",
"- **FUEL CONSUMPTION in CITY(L/100 km)** e.g. 9.9\n",
"- **FUEL CONSUMPTION in HWY (L/100 km)** e.g. 8.9\n",
"- **FUEL CONSUMPTION COMB (L/100 km)** e.g. 9.2\n",
"- **CO2 EMISSIONS (g/km)** e.g. 182 --> low --> 0\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"reading_data\">Reading the data in</h2>\n"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"tags": []
},
"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>MODELYEAR</th>\n",
" <th>MAKE</th>\n",
" <th>MODEL</th>\n",
" <th>VEHICLECLASS</th>\n",
" <th>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>TRANSMISSION</th>\n",
" <th>FUELTYPE</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>FUELCONSUMPTION_COMB_MPG</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>AS5</td>\n",
" <td>Z</td>\n",
" <td>9.9</td>\n",
" <td>6.7</td>\n",
" <td>8.5</td>\n",
" <td>33</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX</td>\n",
" <td>COMPACT</td>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>M6</td>\n",
" <td>Z</td>\n",
" <td>11.2</td>\n",
" <td>7.7</td>\n",
" <td>9.6</td>\n",
" <td>29</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>ILX HYBRID</td>\n",
" <td>COMPACT</td>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>AV7</td>\n",
" <td>Z</td>\n",
" <td>6.0</td>\n",
" <td>5.8</td>\n",
" <td>5.9</td>\n",
" <td>48</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>MDX 4WD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.7</td>\n",
" <td>9.1</td>\n",
" <td>11.1</td>\n",
" <td>25</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>RDX AWD</td>\n",
" <td>SUV - SMALL</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>12.1</td>\n",
" <td>8.7</td>\n",
" <td>10.6</td>\n",
" <td>27</td>\n",
" <td>244</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>2014</td>\n",
" <td>ACURA</td>\n",
" <td>RLX</td>\n",
" <td>MID-SIZE</td>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>AS6</td>\n",
" <td>Z</td>\n",
" <td>11.9</td>\n",
" <td>7.7</td>\n",
" <td>10.0</td>\n",
" <td>28</td>\n",
" <td>230</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" MODELYEAR MAKE MODEL VEHICLECLASS ENGINESIZE CYLINDERS \\\n",
"0 2014 ACURA ILX COMPACT 2.0 4 \n",
"1 2014 ACURA ILX COMPACT 2.4 4 \n",
"2 2014 ACURA ILX HYBRID COMPACT 1.5 4 \n",
"3 2014 ACURA MDX 4WD SUV - SMALL 3.5 6 \n",
"4 2014 ACURA RDX AWD SUV - SMALL 3.5 6 \n",
"5 2014 ACURA RLX MID-SIZE 3.5 6 \n",
"\n",
" TRANSMISSION FUELTYPE FUELCONSUMPTION_CITY FUELCONSUMPTION_HWY \\\n",
"0 AS5 Z 9.9 6.7 \n",
"1 M6 Z 11.2 7.7 \n",
"2 AV7 Z 6.0 5.8 \n",
"3 AS6 Z 12.7 9.1 \n",
"4 AS6 Z 12.1 8.7 \n",
"5 AS6 Z 11.9 7.7 \n",
"\n",
" FUELCONSUMPTION_COMB FUELCONSUMPTION_COMB_MPG CO2EMISSIONS \n",
"0 8.5 33 196 \n",
"1 9.6 29 221 \n",
"2 5.9 48 136 \n",
"3 11.1 25 255 \n",
"4 10.6 27 244 \n",
"5 10.0 28 230 "
]
},
"execution_count": 5,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"df = pd.read_csv(\"FuelConsumption.csv\")\n",
"\n",
"# take a look at the dataset\n",
"df.head(6)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's select some features that we want to use for regression.\n"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"tags": []
},
"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>ENGINESIZE</th>\n",
" <th>CYLINDERS</th>\n",
" <th>FUELCONSUMPTION_CITY</th>\n",
" <th>FUELCONSUMPTION_HWY</th>\n",
" <th>FUELCONSUMPTION_COMB</th>\n",
" <th>CO2EMISSIONS</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>2.0</td>\n",
" <td>4</td>\n",
" <td>9.9</td>\n",
" <td>6.7</td>\n",
" <td>8.5</td>\n",
" <td>196</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>2.4</td>\n",
" <td>4</td>\n",
" <td>11.2</td>\n",
" <td>7.7</td>\n",
" <td>9.6</td>\n",
" <td>221</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>1.5</td>\n",
" <td>4</td>\n",
" <td>6.0</td>\n",
" <td>5.8</td>\n",
" <td>5.9</td>\n",
" <td>136</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>12.7</td>\n",
" <td>9.1</td>\n",
" <td>11.1</td>\n",
" <td>255</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>12.1</td>\n",
" <td>8.7</td>\n",
" <td>10.6</td>\n",
" <td>244</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>3.5</td>\n",
" <td>6</td>\n",
" <td>11.9</td>\n",
" <td>7.7</td>\n",
" <td>10.0</td>\n",
" <td>230</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" ENGINESIZE CYLINDERS FUELCONSUMPTION_CITY FUELCONSUMPTION_HWY \\\n",
"0 2.0 4 9.9 6.7 \n",
"1 2.4 4 11.2 7.7 \n",
"2 1.5 4 6.0 5.8 \n",
"3 3.5 6 12.7 9.1 \n",
"4 3.5 6 12.1 8.7 \n",
"5 3.5 6 11.9 7.7 \n",
"\n",
" FUELCONSUMPTION_COMB CO2EMISSIONS \n",
"0 8.5 196 \n",
"1 9.6 221 \n",
"2 5.9 136 \n",
"3 11.1 255 \n",
"4 10.6 244 \n",
"5 10.0 230 "
]
},
"execution_count": 7,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"cdf = df[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY','FUELCONSUMPTION_COMB','CO2EMISSIONS']]\n",
"cdf.head(6)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"Let's plot Emission values with respect to Engine size:\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"image/png": "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WID4+HiMGDFCrbdFRERELkTVZOfo0aMYNmyY8et58+YBAKZPn46NGzciIyMDdXV1mDVrFiorK3Hvvfdiz549CAwMNB6zatUqeHl5YfLkyairq8Pw4cOxceNGaLXcgUREREQuVGdHTZ5WZ4eIiKgtcPs6O0RERERKYLJDREREHk3VNTuuwnAnz9MqKRMREXkyw+e2vRU5THYAY2NRVlImIiJyPzU1NQgODrb6OhcoA2hqasKlS5cQGBhotzqzFNXV1YiJiUFpaWmbWfjM98z37Kn4nvmePZU7v2e9Xo+amhpERUWhXTvrK3M4swOgXbt2iI6Odtr522KVZr7ntoHvuW3ge24b3PU925rRMeACZSIiIvJoTHaIiIjIozHZcSIfHx/87W9/g4+Pj9pDaTV8z20D33PbwPfcNrSF98wFykREROTROLNDREREHo3JDhEREXk0JjtERETk0ZjsEBERkUdjsuMkX3/9NcaPH4+oqChoNBrk5OSoPSSnWrZsGRISEhAYGIiwsDBMnDgRZ86cUXtYTrV+/Xr069fPWIhr8ODB+Pzzz9UeVqtZtmwZNBoN0tPT1R6KUy1evBgajcbkERERofawnO7ixYt48sknERoaCn9/f9x1110oLCxUe1hOExsb2+LnrNFoMHv2bLWH5jSNjY34y1/+gu7du8PPzw+33nor/v73v6OpqUntoSmOFZSd5OrVq7jzzjvx29/+Fo8++qjaw3G6/fv3Y/bs2UhISEBjYyNeeOEFjBo1Ct9++y0CAgLUHp5TREdH45VXXsFtt90GANi0aROSk5Px73//G3379lV5dM5VUFCAt99+G/369VN7KK2ib9++2Lt3r/FrrVar4micr7KyEvfddx+GDRuGzz//HGFhYTh37hw6duyo9tCcpqCgADqdzvj1yZMnMXLkSDz22GMqjsq5Xn31Vbz55pvYtGkT+vbti6NHj+K3v/0tgoODkZaWpvbwFMVkx0nGjh2LsWPHqj2MVrN7926Trzds2ICwsDAUFhbigQceUGlUzjV+/HiTr19++WWsX78ehw8f9uhkp7a2Fk888QTeeecdLFmyRO3htAovL682MZtj8OqrryImJgYbNmwwPhcbG6vegFpBly5dTL5+5ZVX0KNHDwwdOlSlETnfoUOHkJycjIcffhjAzZ/xtm3bcPToUZVHpjzexiKnqKqqAgCE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\n",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(cdf.ENGINESIZE, cdf.CO2EMISSIONS, color='green')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"#### Creating train and test dataset\n",
"Train/Test Split involves splitting the dataset into training and testing sets respectively, which are mutually exclusive. After which, you train with the training set and test with the testing set. \n",
"This will provide a more accurate evaluation on out-of-sample accuracy because the testing dataset is not part of the dataset that have been used to train the model. Therefore, it gives us a better understanding of how well our model generalizes on new data.\n",
"\n",
"We know the outcome of each data point in the testing dataset, making it great to test with! Since this data has not been used to train the model, the model has no knowledge of the outcome of these data points. So, in essence, it is truly an out-of-sample testing.\n",
"\n",
"Let's split our dataset into train and test sets. Around 80% of the entire dataset will be used for training and 20% for testing. We create a mask to select random rows using the __np.random.rand()__ function: \n"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"tags": []
},
"outputs": [],
"source": [
"msk = np.random.rand(len(df)) < 0.8\n",
"train = cdf[msk]\n",
"test = cdf[~msk]"
]
},
{
"cell_type": "markdown",
"metadata": {
"tags": []
},
"source": [
"#### Train data distribution\n"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"tags": []
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 640x480 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"plt.scatter(train.ENGINESIZE, train.CO2EMISSIONS, color='green')\n",
"plt.xlabel(\"Engine size\")\n",
"plt.ylabel(\"Emission\")\n",
"plt.show()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"multiple_regression_model\">Multiple Regression Model</h2>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In reality, there are multiple variables that impact the co2emission. When more than one independent variable is present, the process is called multiple linear regression. An example of multiple linear regression is predicting co2emission using the features FUELCONSUMPTION_COMB, EngineSize and Cylinders of cars. The good thing here is that multiple linear regression model is the extension of the simple linear regression model.\n"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[10.99646535 7.61620514 9.4874738 ]]\n"
]
}
],
"source": [
"from sklearn import linear_model\n",
"regr = linear_model.LinearRegression()\n",
"x = np.asanyarray(train[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB']])\n",
"y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"regr.fit (x, y)\n",
"# The coefficients\n",
"print ('Coefficients: ', regr.coef_)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"As mentioned before, __Coefficient__ and __Intercept__ are the parameters of the fitted line. \n",
"Given that it is a multiple linear regression model with 3 parameters and that the parameters are the intercept and coefficients of the hyperplane, sklearn can estimate them from our data. Scikit-learn uses plain Ordinary Least Squares method to solve this problem.\n",
"\n",
"#### Ordinary Least Squares (OLS)\n",
"OLS is a method for estimating the unknown parameters in a linear regression model. OLS chooses the parameters of a linear function of a set of explanatory variables by minimizing the sum of the squares of the differences between the target dependent variable and those predicted by the linear function. In other words, it tries to minimizes the sum of squared errors (SSE) or mean squared error (MSE) between the target variable (y) and our predicted output ($\\hat{y}$) over all samples in the dataset.\n",
"\n",
"OLS can find the best parameters using of the following methods:\n",
"* Solving the model parameters analytically using closed-form equations\n",
"* Using an optimization algorithm (Gradient Descent, Stochastic Gradient Descent, Newtons Method, etc.)\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"prediction\">Prediction</h2>\n"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Mean Squared Error (MSE) : 573.97\n",
"Variance score: 0.86\n"
]
}
],
"source": [
"y_hat= regr.predict(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB']])\n",
"x = np.asanyarray(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_COMB']])\n",
"y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"print(\"Mean Squared Error (MSE) : %.2f\"\n",
" % np.mean((y_hat - y) ** 2))\n",
"\n",
"# Explained variance score: 1 is perfect prediction\n",
"print('Variance score: %.2f' % regr.score(x, y))"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"__Explained variance regression score:__ \n",
"Let $\\hat{y}$ be the estimated target output, y the corresponding (correct) target output, and Var be the Variance (the square of the standard deviation). Then the explained variance is estimated as follows:\n",
"\n",
"$\\texttt{explainedVariance}(y, \\hat{y}) = 1 - \\frac{Var\\{ y - \\hat{y}\\}}{Var\\{y\\}}$ \n",
"The best possible score is 1.0, the lower values are worse.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<h2 id=\"practice\">Practice</h2>\n",
"Try to use a multiple linear regression with the same dataset, but this time use FUELCONSUMPTION_CITY and FUELCONSUMPTION_HWY instead of FUELCONSUMPTION_COMB. Does it result in better accuracy?\n"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Coefficients: [[11.07046945 7.23764833 6.17307568 3.02316987]]\n",
"Residual sum of squares: 516.35\n",
"Variance score: 0.87\n"
]
}
],
"source": [
"# write your code here\n",
"regr = linear_model.LinearRegression()\n",
"x = np.asanyarray(train[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"regr.fit (x, y)\n",
"print ('Coefficients: ', regr.coef_)\n",
"y_= regr.predict(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"x = np.asanyarray(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"print(\"Residual sum of squares: %.2f\"% np.mean((y_ - y) ** 2))\n",
"print('Variance score: %.2f' % regr.score(x, y))\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"<details><summary>Click here for the solution</summary>\n",
"\n",
"```python\n",
"regr = linear_model.LinearRegression()\n",
"x = np.asanyarray(train[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"y = np.asanyarray(train[['CO2EMISSIONS']])\n",
"regr.fit (x, y)\n",
"print ('Coefficients: ', regr.coef_)\n",
"y_= regr.predict(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"x = np.asanyarray(test[['ENGINESIZE','CYLINDERS','FUELCONSUMPTION_CITY','FUELCONSUMPTION_HWY']])\n",
"y = np.asanyarray(test[['CO2EMISSIONS']])\n",
"print(\"Residual sum of squares: %.2f\"% np.mean((y_ - y) ** 2))\n",
"print('Variance score: %.2f' % regr.score(x, y))\n",
"\n",
"```\n",
"\n",
"</details>\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"### Thank you for completing this lab!\n",
"\n",
"\n",
"## Author\n",
"\n",
"Saeed Aghabozorgi\n",
"\n",
"\n",
"### Other Contributors\n",
"\n",
"<a href=\"https://www.linkedin.com/in/joseph-s-50398b136/\" target=\"_blank\">Joseph Santarcangelo</a>\n",
"\n",
"## <h3 align=\"center\"> © IBM Corporation 2020. All rights reserved. <h3/>\n",
" \n",
"<!--\n",
"\n",
"## Change Log\n",
"\n",
"\n",
"| Date (YYYY-MM-DD) | Version | Changed By | Change Description |\n",
"|---|---|---|---|\n",
"| 2020-11-03 | 2.1 | Lakshmi | Made changes in URL |\n",
"| 2020-08-27 | 2.0 | Lavanya | Moved lab to course repo in GitLab |\n",
"| | | | |\n",
"| | | | |\n",
"\n",
"\n",
"\n",
"\n",
"--!>\n"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python",
"language": "python",
"name": "conda-env-python-py"
},
"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.12"
},
"prev_pub_hash": "c1170d4cb1c9bbce7dbbef74b645fc6b265a5aaf4ce89c4ac861feed8769ed99"
},
"nbformat": 4,
"nbformat_minor": 4
}