You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
ML-For-Beginners/Regression/3-Linear/solution/notebook.ipynb

542 lines
219 KiB

4 years ago
{
"metadata": {
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
4 years ago
"version": "3.7.0"
4 years ago
},
"orig_nbformat": 2,
"kernelspec": {
4 years ago
"name": "python37364bit8d3b438fb5fc4430a93ac2cb74d693a7",
"display_name": "Python 3.7.0 64-bit ('3.7')"
},
"metadata": {
"interpreter": {
"hash": "70b38d7a306a849643e446cd70466270a13445e5987dfa1344ef2b127438fa4d"
}
4 years ago
}
},
"nbformat": 4,
"nbformat_minor": 2,
"cells": [
{
"source": [
"## Linear and Polynomial Regression for Pumpkin Pricing - Lesson 3\n",
4 years ago
"\n",
"Load up required libraries and dataset. Convert the data to a dataframe containing a subset of the data: \n",
"\n",
"- Only get pumpkins priced by the bushel\n",
"- Convert the date to a month\n",
"- Calculate the price to be an average of high and low prices\n",
"- Convert the price to reflect the pricing by bushel quantity"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
4 years ago
"execution_count": 2,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" City Name Type Package Variety Sub Variety Grade Date \\\n",
"0 BALTIMORE NaN 24 inch bins NaN NaN NaN 4/29/17 \n",
"1 BALTIMORE NaN 24 inch bins NaN NaN NaN 5/6/17 \n",
"2 BALTIMORE NaN 24 inch bins HOWDEN TYPE NaN NaN 9/24/16 \n",
"3 BALTIMORE NaN 24 inch bins HOWDEN TYPE NaN NaN 9/24/16 \n",
"4 BALTIMORE NaN 24 inch bins HOWDEN TYPE NaN NaN 11/5/16 \n",
"\n",
" Low Price High Price Mostly Low ... Unit of Sale Quality Condition \\\n",
"0 270.0 280.0 270.0 ... NaN NaN NaN \n",
"1 270.0 280.0 270.0 ... NaN NaN NaN \n",
"2 160.0 160.0 160.0 ... NaN NaN NaN \n",
"3 160.0 160.0 160.0 ... NaN NaN NaN \n",
"4 90.0 100.0 90.0 ... NaN NaN NaN \n",
"\n",
" Appearance Storage Crop Repack Trans Mode Unnamed: 24 Unnamed: 25 \n",
"0 NaN NaN NaN E NaN NaN NaN \n",
"1 NaN NaN NaN E NaN NaN NaN \n",
"2 NaN NaN NaN N NaN NaN NaN \n",
"3 NaN NaN NaN N NaN NaN NaN \n",
"4 NaN NaN NaN N NaN NaN NaN \n",
"\n",
"[5 rows x 26 columns]"
],
"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>City Name</th>\n <th>Type</th>\n <th>Package</th>\n <th>Variety</th>\n <th>Sub Variety</th>\n <th>Grade</th>\n <th>Date</th>\n <th>Low Price</th>\n <th>High Price</th>\n <th>Mostly Low</th>\n <th>...</th>\n <th>Unit of Sale</th>\n <th>Quality</th>\n <th>Condition</th>\n <th>Appearance</th>\n <th>Storage</th>\n <th>Crop</th>\n <th>Repack</th>\n <th>Trans Mode</th>\n <th>Unnamed: 24</th>\n <th>Unnamed: 25</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>0</th>\n <td>BALTIMORE</td>\n <td>NaN</td>\n <td>24 inch bins</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>4/29/17</td>\n <td>270.0</td>\n <td>280.0</td>\n <td>270.0</td>\n <td>...</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>E</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n </tr>\n <tr>\n <th>1</th>\n <td>BALTIMORE</td>\n <td>NaN</td>\n <td>24 inch bins</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>5/6/17</td>\n <td>270.0</td>\n <td>280.0</td>\n <td>270.0</td>\n <td>...</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>E</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n </tr>\n <tr>\n <th>2</th>\n <td>BALTIMORE</td>\n <td>NaN</td>\n <td>24 inch bins</td>\n <td>HOWDEN TYPE</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>9/24/16</td>\n <td>160.0</td>\n <td>160.0</td>\n <td>160.0</td>\n <td>...</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>N</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n </tr>\n <tr>\n <th>3</th>\n <td>BALTIMORE</td>\n <td>NaN</td>\n <td>24 inch bins</td>\n <td>HOWDEN TYPE</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>9/24/16</td>\n <td>160.0</td>\n <td>160.0</td>\n <td>160.0</td>\n <td>...</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>N</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n </tr>\n <tr>\n <th>4</th>\n <td>BALTIMORE</td>\n <td>NaN</td>\n <td>24 inch bins</td>\n <td>HOWDEN TYPE</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>11/5/16</td>\n <td>90.0</td>\n <td>100.0</td>\n <td>90.0</td>\n <td>...</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>N</td>\n <td>NaN</td>\n <td>NaN</td>\n <td>NaN</td>\n </tr>\n </tbody>\n</table>\n<p>5 rows × 26 columns</p>\n</div>"
},
"metadata": {},
4 years ago
"execution_count": 2
4 years ago
}
],
"source": [
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"import numpy as np\n",
"\n",
"pumpkins = pd.read_csv('../../data/US-pumpkins.csv')\n",
"\n",
"pumpkins.head()\n"
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 3,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" Month Variety City Package Low Price High Price Price\n",
"70 1 3 1 0 5 3 13.636364\n",
"71 1 3 1 0 10 7 16.363636\n",
"72 2 3 1 0 10 7 16.363636\n",
"73 2 3 1 0 9 6 15.454545\n",
"74 2 3 1 0 5 3 13.636364"
],
"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>Month</th>\n <th>Variety</th>\n <th>City</th>\n <th>Package</th>\n <th>Low Price</th>\n <th>High Price</th>\n <th>Price</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>70</th>\n <td>1</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>5</td>\n <td>3</td>\n <td>13.636364</td>\n </tr>\n <tr>\n <th>71</th>\n <td>1</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>10</td>\n <td>7</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>72</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>10</td>\n <td>7</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>73</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>9</td>\n <td>6</td>\n <td>15.454545</td>\n </tr>\n <tr>\n <th>74</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>5</td>\n <td>3</td>\n <td>13.636364</td>\n </tr>\n </tbody>\n</table>\n</div>"
},
"metadata": {},
4 years ago
"execution_count": 3
4 years ago
}
],
"source": [
"from sklearn.preprocessing import LabelEncoder\n",
"\n",
"pumpkins = pumpkins[pumpkins['Package'].str.contains('bushel', case=True, regex=True)]\n",
"\n",
"new_columns = ['Package', 'Variety', 'City Name', 'Month', 'Low Price', 'High Price', 'Date']\n",
"\n",
"pumpkins = pumpkins.drop([c for c in pumpkins.columns if c not in new_columns], axis=1)\n",
"\n",
"price = (pumpkins['Low Price'] + pumpkins['High Price']) / 2\n",
"\n",
"month = pd.DatetimeIndex(pumpkins['Date']).month\n",
"\n",
"new_pumpkins = pd.DataFrame({'Month': month, 'Variety': pumpkins['Variety'], 'City': pumpkins['City Name'], 'Package': pumpkins['Package'], 'Low Price': pumpkins['Low Price'],'High Price': pumpkins['High Price'], 'Price': price})\n",
"\n",
"new_pumpkins.loc[new_pumpkins['Package'].str.contains('1 1/9'), 'Price'] = price/1.1\n",
"\n",
"new_pumpkins.loc[new_pumpkins['Package'].str.contains('1/2'), 'Price'] = price*2\n",
"\n",
"new_pumpkins.iloc[:, 0:-1] = new_pumpkins.iloc[:, 0:-1].apply(LabelEncoder().fit_transform)\n",
"\n",
"new_pumpkins.head()\n"
]
},
{
"source": [
"A scatterplot reminds us that we only have month data from August through December. We probably need more data to be able to draw conclusions in a linear fashion."
4 years ago
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
4 years ago
"execution_count": 4,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
4 years ago
"<matplotlib.collections.PathCollection at 0x7feef87b0358>"
4 years ago
]
},
"metadata": {},
4 years ago
"execution_count": 4
4 years ago
},
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
4 years ago
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"248.518125pt\" version=\"1.1\" viewBox=\"0 0 368.925 248.518125\" width=\"368.925pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;white-space:pre;}\n </style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M -0 248.518125 \nL 368.925 248.518125 \nL 368.925 0 \nL -0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 26.925 224.64 \nL 361.725 224.64 \nL 361.725 7.2 \nL 26.925 7.2 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"PathCollection_1\">\n <defs>\n <path d=\"M 0 3 \nC 0.795609 3 1.55874 2.683901 2.12132 2.12132 \nC 2.683901 1.55874 3 0.795609 3 0 \nC 3 -0.795609 2.683901 -1.55874 2.12132 -2.12132 \nC 1.55874 -2.683901 0.795609 -3 0 -3 \nC -0.795609 -3 -1.55874 -2.683901 -2.12132 -2.12132 \nC -2.683901 -1.55874 -3 -0.795609 -3 0 \nC -3 0.795609 -2.683901 1.55874 -2.12132 2.12132 \nC -1.55874 2.683901 -0.795609 3 0 3 \nz\n\" id=\"m9d5cf62764\" style=\"stroke:#1f77b4;\"/>\n </defs>\n <g clip-path=\"url(#pf2830dfa91)\">\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"201.41676\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"188.144301\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"188.144301\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"192.568454\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"201.41676\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"188.144301\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"192.568454\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"189.250339\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"201.41676\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"192.568454\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"189.250339\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"201.41676\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"192.568454\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"189.250339\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"201.41676\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"194.780531\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"194.325\" xlink:href=\"#m9d5cf62764\" y=\"192.568454\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"188.144301\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"196.992607\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"188.144301\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"196.992607\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"196.992607\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"196.992607\"/>\n <use style=\"fill:#1f77b4;stroke:#1f77b4;\" x=\"118.573479\" xlink:href=\"#m9d5cf62764\" y=\"92.58
"image/png": "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
4 years ago
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"import matplotlib.pyplot as plt\n",
"plt.scatter('Month','Price',data=new_pumpkins)"
4 years ago
]
},
{
"source": [
"Try some different correlations"
],
"cell_type": "markdown",
"metadata": {}
},
4 years ago
{
"cell_type": "code",
4 years ago
"execution_count": 5,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
4 years ago
"0.3236397181608923\n0.6061712937226016\n"
4 years ago
]
}
],
"source": [
"print(new_pumpkins['City'].corr(new_pumpkins['Price']))\n",
"\n",
"print(new_pumpkins['Package'].corr(new_pumpkins['Price']))\n"
4 years ago
]
},
{
"source": [
"Drop unused columns"
],
"cell_type": "markdown",
"metadata": {}
},
4 years ago
{
"cell_type": "code",
4 years ago
"execution_count": 6,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"<class 'pandas.core.frame.DataFrame'>\nInt64Index: 415 entries, 70 to 1742\nData columns (total 7 columns):\n # Column Non-Null Count Dtype \n--- ------ -------------- ----- \n 0 Month 415 non-null int64 \n 1 Variety 415 non-null int64 \n 2 City 415 non-null int64 \n 3 Package 415 non-null int64 \n 4 Low Price 415 non-null int64 \n 5 High Price 415 non-null int64 \n 6 Price 415 non-null float64\ndtypes: float64(1), int64(6)\nmemory usage: 25.9 KB\n"
]
}
],
"source": [
"\n",
"new_pumpkins.dropna(inplace=True)\n",
"new_pumpkins.info()\n",
"\n",
"\n"
]
},
{
"source": [
"Create a new dataframe"
],
"cell_type": "markdown",
"metadata": {}
},
4 years ago
{
"cell_type": "code",
4 years ago
"execution_count": 7,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" Package Price\n",
"70 0 13.636364\n",
"71 0 16.363636\n",
"72 0 16.363636\n",
"73 0 15.454545\n",
"74 0 13.636364\n",
4 years ago
"... ... ...\n",
"1738 2 30.000000\n",
"1739 2 28.750000\n",
"1740 2 25.750000\n",
"1741 2 24.000000\n",
"1742 2 24.000000\n",
4 years ago
"\n",
"[415 rows x 2 columns]"
],
"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>Package</th>\n <th>Price</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>70</th>\n <td>0</td>\n <td>13.636364</td>\n </tr>\n <tr>\n <th>71</th>\n <td>0</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>72</th>\n <td>0</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>73</th>\n <td>0</td>\n <td>15.454545</td>\n </tr>\n <tr>\n <th>74</th>\n <td>0</td>\n <td>13.636364</td>\n </tr>\n <tr>\n <th>...</th>\n <td>...</td>\n <td>...</td>\n </tr>\n <tr>\n <th>1738</th>\n <td>2</td>\n <td>30.000000</td>\n </tr>\n <tr>\n <th>1739</th>\n <td>2</td>\n <td>28.750000</td>\n </tr>\n <tr>\n <th>1740</th>\n <td>2</td>\n <td>25.750000</td>\n </tr>\n <tr>\n <th>1741</th>\n <td>2</td>\n <td>24.000000</td>\n </tr>\n <tr>\n <th>1742</th>\n <td>2</td>\n <td>24.000000</td>\n </tr>\n </tbody>\n</table>\n<p>415 rows × 2 columns</p>\n</div>"
4 years ago
},
"metadata": {},
4 years ago
"execution_count": 7
4 years ago
}
],
"source": [
"new_columns = ['Package', 'Price']\n",
"lin_pumpkins = new_pumpkins.drop([c for c in new_pumpkins.columns if c not in new_columns], axis='columns')\n",
4 years ago
"\n",
"lin_pumpkins\n"
4 years ago
]
},
{
"source": [
"Set X and y arrays to correspond to Package and Price"
],
"cell_type": "markdown",
"metadata": {}
},
4 years ago
{
"cell_type": "code",
4 years ago
"execution_count": 8,
4 years ago
"metadata": {},
"outputs": [],
"source": [
"X = lin_pumpkins.values[:, :1]\n",
"y = lin_pumpkins.values[:, 1:2]\n"
4 years ago
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 9,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
4 years ago
"Model Accuracy: 0.3315342327998989\n"
4 years ago
]
}
],
"source": [
"from sklearn.linear_model import LinearRegression\n",
"from sklearn.metrics import r2_score, mean_squared_error, mean_absolute_error\n",
4 years ago
"from sklearn.model_selection import train_test_split\n",
"\n",
"\n",
4 years ago
"X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)\n",
4 years ago
"lin_reg = LinearRegression()\n",
"lin_reg.fit(X_train,y_train)\n",
"\n",
"pred = lin_reg.predict(X_test)\n",
"\n",
"accuracy_score = lin_reg.score(X_train,y_train)\n",
4 years ago
"print('Model Accuracy: ', accuracy_score)"
4 years ago
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 11,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
4 years ago
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"262.19625pt\" version=\"1.1\" viewBox=\"0 0 382.603125 262.19625\" width=\"382.603125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;white-space:pre;}\n </style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 262.19625 \nL 382.603125 262.19625 \nL 382.603125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 224.64 \nL 375.403125 224.64 \nL 375.403125 7.2 \nL 40.603125 7.2 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"PathCollection_1\">\n <defs>\n <path d=\"M 0 3 \nC 0.795609 3 1.55874 2.683901 2.12132 2.12132 \nC 2.683901 1.55874 3 0.795609 3 0 \nC 3 -0.795609 2.683901 -1.55874 2.12132 -2.12132 \nC 1.55874 -2.683901 0.795609 -3 0 -3 \nC -0.795609 -3 -1.55874 -2.683901 -2.12132 -2.12132 \nC -2.683901 -1.55874 -3 -0.795609 -3 0 \nC -3 0.795609 -2.683901 1.55874 -2.12132 2.12132 \nC -1.55874 2.683901 -0.795609 3 0 3 \nz\n\" id=\"m5342314b98\" style=\"stroke:#000000;\"/>\n </defs>\n <g clip-path=\"url(#p21616a429c)\">\n <use style=\"stroke:#000000;\" x=\"283.754646\" xlink:href=\"#m5342314b98\" y=\"37.110092\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"167.061394\"/>\n <use style=\"stroke:#000000;\" x=\"359.506166\" xlink:href=\"#m5342314b98\" y=\"174.318709\"/>\n <use style=\"stroke:#000000;\" x=\"359.506166\" xlink:href=\"#m5342314b98\" y=\"184.297517\"/>\n <use style=\"stroke:#000000;\" x=\"132.251604\" xlink:href=\"#m5342314b98\" y=\"187.472593\"/>\n <use style=\"stroke:#000000;\" x=\"132.251604\" xlink:href=\"#m5342314b98\" y=\"187.472593\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"192.008415\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"188.606548\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"196.544237\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"119.435262\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"59.562411\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"114.445858\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"119.435262\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"99.477645\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"69.541219\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"198.812148\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"210.151703\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"167.061394\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"192.008415\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"94.488241\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"59.562411\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#m5342314b98\" y=\"119.435262\"/>\n <use style=\"stroke:#000000;\" x=\"283.754646\" xlink:href=\"#m5342314b98\" y=\"87.004134\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"202.214015\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"192.008415\"/>\n <use style=\"stroke:#000000;\" x=\"56.500084\" xlink:href=\"#m5342314b98\" y=\"187.472593\"/>\n <use style=\"stroke:#000000;\" x=\"208.00312
"image/png": "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
4 years ago
},
"metadata": {
"needs_background": "light"
}
4 years ago
}
],
"source": [
"\n",
"plt.scatter(X_test, y_test, color='black')\n",
"plt.plot(X_test, pred, color='blue', linewidth=3)\n",
"\n",
"plt.xlabel('Package')\n",
"plt.ylabel('Price')\n",
4 years ago
"\n",
"plt.show()\n",
"\n"
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 12,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
4 years ago
"array([[33.15655975]])"
]
},
"metadata": {},
4 years ago
"execution_count": 12
}
],
"source": [
4 years ago
"lin_reg.predict( np.array([ [2.75] ]) )"
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 13,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
" Month Variety City Package Price\n",
"70 1 3 1 0 13.636364\n",
"71 1 3 1 0 16.363636\n",
"72 2 3 1 0 16.363636\n",
"73 2 3 1 0 15.454545\n",
"74 2 3 1 0 13.636364\n",
"... ... ... ... ... ...\n",
"1738 1 1 9 2 30.000000\n",
"1739 1 1 9 2 28.750000\n",
"1740 1 1 9 2 25.750000\n",
"1741 1 1 9 2 24.000000\n",
"1742 1 1 9 2 24.000000\n",
"\n",
"[415 rows x 5 columns]"
],
"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>Month</th>\n <th>Variety</th>\n <th>City</th>\n <th>Package</th>\n <th>Price</th>\n </tr>\n </thead>\n <tbody>\n <tr>\n <th>70</th>\n <td>1</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>13.636364</td>\n </tr>\n <tr>\n <th>71</th>\n <td>1</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>72</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>16.363636</td>\n </tr>\n <tr>\n <th>73</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>15.454545</td>\n </tr>\n <tr>\n <th>74</th>\n <td>2</td>\n <td>3</td>\n <td>1</td>\n <td>0</td>\n <td>13.636364</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>1738</th>\n <td>1</td>\n <td>1</td>\n <td>9</td>\n <td>2</td>\n <td>30.000000</td>\n </tr>\n <tr>\n <th>1739</th>\n <td>1</td>\n <td>1</td>\n <td>9</td>\n <td>2</td>\n <td>28.750000</td>\n </tr>\n <tr>\n <th>1740</th>\n <td>1</td>\n <td>1</td>\n <td>9</td>\n <td>2</td>\n <td>25.750000</td>\n </tr>\n <tr>\n <th>1741</th>\n <td>1</td>\n <td>1</td>\n <td>9</td>\n <td>2</td>\n <td>24.000000</td>\n </tr>\n <tr>\n <th>1742</th>\n <td>1</td>\n <td>1</td>\n <td>9</td>\n <td>2</td>\n <td>24.000000</td>\n </tr>\n </tbody>\n</table>\n<p>415 rows × 5 columns</p>\n</div>"
},
"metadata": {},
4 years ago
"execution_count": 13
}
],
"source": [
"new_columns = ['Variety', 'Package', 'City', 'Month', 'Price']\n",
"poly_pumpkins = new_pumpkins.drop([c for c in new_pumpkins.columns if c not in new_columns], axis='columns')\n",
"\n",
"poly_pumpkins"
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 14,
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
4 years ago
"<pandas.io.formats.style.Styler at 0x7fef29154a58>"
],
4 years ago
"text/html": "<style type=\"text/css\" >\n#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col0,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow1_col1,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow2_col2,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow3_col3,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow4_col4{\n background-color: #b40426;\n color: #f1f1f1;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col1{\n background-color: #ead4c8;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col2{\n background-color: #4961d2;\n color: #f1f1f1;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col3{\n background-color: #9bbcff;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col4{\n background-color: #bbd1f8;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow1_col0{\n background-color: #9fbfff;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow1_col2,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow1_col3,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow1_col4,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow2_col0,#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow4_col1{\n background-color: #3b4cc0;\n color: #f1f1f1;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow2_col1{\n background-color: #a9c6fd;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow2_col3{\n background-color: #edd2c3;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow2_col4{\n background-color: #f5c0a7;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow3_col0{\n background-color: #455cce;\n color: #f1f1f1;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow3_col1{\n background-color: #6485ec;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow3_col2{\n background-color: #ccd9ed;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow3_col4{\n background-color: #f08a6c;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow4_col0{\n background-color: #445acc;\n color: #f1f1f1;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow4_col2{\n background-color: #d2dbe8;\n color: #000000;\n }#T_20a68c20_aecd_11eb_be4e_f218988e26cdrow4_col3{\n background-color: #f39778;\n color: #000000;\n }</style><table id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cd\" ><thead> <tr> <th class=\"blank level0\" ></th> <th class=\"col_heading level0 col0\" >Month</th> <th class=\"col_heading level0 col1\" >Variety</th> <th class=\"col_heading level0 col2\" >City</th> <th class=\"col_heading level0 col3\" >Package</th> <th class=\"col_heading level0 col4\" >Price</th> </tr></thead><tbody>\n <tr>\n <th id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdlevel0_row0\" class=\"row_heading level0 row0\" >Month</th>\n <td id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col0\" class=\"data row0 col0\" >1.000000</td>\n <td id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col1\" class=\"data row0 col1\" >0.171330</td>\n <td id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col2\" class=\"data row0 col2\" >-0.188728</td>\n <td id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col3\" class=\"data row0 col3\" >-0.144847</td>\n <td id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdrow0_col4\" class=\"data row0 col4\" >-0.148783</td>\n </tr>\n <tr>\n <th id=\"T_20a68c20_aecd_11eb_be4e_f218988e26cdlevel0_row1\" class=\"row_heading level0 row1\" >Variety</th>\n <td id=\"T_20a68c20_aec
},
"metadata": {},
4 years ago
"execution_count": 14
}
],
"source": [
"corr = poly_pumpkins.corr()\n",
"corr.style.background_gradient(cmap='coolwarm')"
]
},
{
"source": [
"Select the Package/Price columns"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
4 years ago
"execution_count": 15,
"metadata": {},
"outputs": [],
"source": [
"X=poly_pumpkins.iloc[:,3:4].values\n",
"y=poly_pumpkins.iloc[:,4:5].values\n"
]
},
{
"source": [
"Create Polynomial Regression model"
],
"cell_type": "markdown",
"metadata": {}
},
{
"cell_type": "code",
4 years ago
"execution_count": 16,
"metadata": {},
"outputs": [
{
"output_type": "display_data",
"data": {
"text/plain": "<Figure size 432x288 with 1 Axes>",
4 years ago
"image/svg+xml": "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"no\"?>\n<!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\"\n \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\">\n<!-- Created with matplotlib (https://matplotlib.org/) -->\n<svg height=\"262.19625pt\" version=\"1.1\" viewBox=\"0 0 382.603125 262.19625\" width=\"382.603125pt\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <defs>\n <style type=\"text/css\">\n*{stroke-linecap:butt;stroke-linejoin:round;white-space:pre;}\n </style>\n </defs>\n <g id=\"figure_1\">\n <g id=\"patch_1\">\n <path d=\"M 0 262.19625 \nL 382.603125 262.19625 \nL 382.603125 0 \nL 0 0 \nz\n\" style=\"fill:none;\"/>\n </g>\n <g id=\"axes_1\">\n <g id=\"patch_2\">\n <path d=\"M 40.603125 224.64 \nL 375.403125 224.64 \nL 375.403125 7.2 \nL 40.603125 7.2 \nz\n\" style=\"fill:#ffffff;\"/>\n </g>\n <g id=\"PathCollection_1\">\n <defs>\n <path d=\"M 0 3 \nC 0.795609 3 1.55874 2.683901 2.12132 2.12132 \nC 2.683901 1.55874 3 0.795609 3 0 \nC 3 -0.795609 2.683901 -1.55874 2.12132 -2.12132 \nC 1.55874 -2.683901 0.795609 -3 0 -3 \nC -0.795609 -3 -1.55874 -2.683901 -2.12132 -2.12132 \nC -2.683901 -1.55874 -3 -0.795609 -3 0 \nC -3 0.795609 -2.683901 1.55874 -2.12132 2.12132 \nC -1.55874 2.683901 -0.795609 3 0 3 \nz\n\" id=\"mdfe5f74b9c\" style=\"stroke:#000000;\"/>\n </defs>\n <g clip-path=\"url(#p4ff216c885)\">\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"199.44082\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"186.475104\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"186.475104\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"190.79701\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"199.44082\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"186.475104\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"190.79701\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"187.555581\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"199.44082\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"190.79701\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"187.555581\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"199.44082\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"190.79701\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"187.555581\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"199.44082\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"192.957962\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"190.79701\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"186.475104\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"195.118915\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"186.475104\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"195.118915\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"195.118915\"/>\n <use style=\"stroke:#000000;\" x=\"58.76331\" xlink:href=\"#mdfe5f74b9c\" y=\"195.118915\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#mdfe5f74b9c\" y=\"93.121949\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#mdfe5f74b9c\" y=\"121.646525\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#mdfe5f74b9c\" y=\"93.121949\"/>\n <use style=\"stroke:#000000;\" x=\"208.003125\" xlink:href=\"#mdfe5f74b9c\" y=\"121.
"image/png": "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
},
"metadata": {
"needs_background": "light"
}
}
],
"source": [
"from sklearn.preprocessing import PolynomialFeatures\n",
"from sklearn.pipeline import make_pipeline\n",
"\n",
"pipeline = make_pipeline(PolynomialFeatures(4), LinearRegression())\n",
"\n",
"X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)\n",
"\n",
"pipeline.fit(np.array(X_train), y_train)\n",
"\n",
"y_pred=pipeline.predict(X_test)\n",
"\n",
"df = pd.DataFrame({'x': X_test[:,0], 'y': y_pred[:,0]})\n",
"df.sort_values(by='x',inplace = True)\n",
"points = pd.DataFrame(df).to_numpy()\n",
"\n",
4 years ago
"plt.plot(points[:, 0], points[:, 1],color=\"blue\", linewidth=3)\n",
"plt.xlabel('Package')\n",
"plt.ylabel('Price')\n",
"\n",
"plt.scatter(X,y, color=\"black\")\n",
"\n",
"plt.show()\n",
"\n"
]
},
{
"cell_type": "code",
4 years ago
"execution_count": 17,
"metadata": {},
"outputs": [
{
"output_type": "stream",
"name": "stdout",
"text": [
"Model Accuracy: 0.8537946517073784\n"
]
}
],
"source": [
"accuracy_score = pipeline.score(X_train,y_train)\n",
"print('Model Accuracy: ', accuracy_score)\n",
"\n"
]
},
4 years ago
{
"cell_type": "code",
4 years ago
"execution_count": 18,
4 years ago
"metadata": {},
"outputs": [
{
"output_type": "execute_result",
"data": {
"text/plain": [
"array([[46.34509342]])"
]
},
"metadata": {},
4 years ago
"execution_count": 18
4 years ago
}
],
"source": [
"pipeline.predict( np.array([ [2.75] ]) )"
]
},
4 years ago
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": []
}
]
}