{ "nbformat": 4, "nbformat_minor": 0, "metadata": { "colab": { "provenance": [] }, "kernelspec": { "name": "python3", "display_name": "Python 3" }, "language_info": { "name": "python" } }, "cells": [ { "cell_type": "markdown", "source": [ "Import Library" ], "metadata": { "id": "P6URMlI_Llgq" } }, { "cell_type": "code", "source": [ "import pandas as pd\n", "import matplotlib.pyplot as plt\n", "import numpy as np" ], "metadata": { "id": "VCBmz6eiLtxb" }, "execution_count": 352, "outputs": [] }, { "cell_type": "markdown", "source": [ "Load Dataset" ], "metadata": { "id": "UAe00l22L4cP" } }, { "cell_type": "code", "source": [ "dataset = pd.read_csv(\n", " "AirQualityUCI.csv",\n", " sep=';',\n", " decimal=','\n", ").iloc[:,0:-2]\n", "\n", "# Replace -200 values with NaN, as they represent missing data\n", "dataset.replace(-200, np.nan, inplace=True)" ], "metadata": { "id": "ssPaxJtlL7Wx" }, "execution_count": 353, "outputs": [] }, { "cell_type": "code", "source": [ "dataset.head()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 226 }, "id": "ANwggjAPNjGk", "outputId": "e8a217cd-5377-4128-8a2e-e538c7f274b8" }, "execution_count": 354, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ " Date Time CO(GT) PT08.S1(CO) NMHC(GT) C6H6(GT) \\n", "0 10/03/2004 18.00.00 2.6 1360.0 150.0 11.9 \n", "1 10/03/2004 19.00.00 2.0 1292.0 112.0 9.4 \n", "2 10/03/2004 20.00.00 2.2 1402.0 88.0 9.0 \n", "3 10/03/2004 21.00.00 2.2 1376.0 80.0 9.2 \n", "4 10/03/2004 22.00.00 1.6 1272.0 51.0 6.5 \n", "\n", " PT08.S2(NMHC) NOx(GT) PT08.S3(NOx) NO2(GT) PT08.S4(NO2) PT08.S5(O3) \\n", "0 1046.0 166.0 1056.0 113.0 1692.0 1268.0 \n", "1 955.0 103.0 1174.0 92.0 1559.0 972.0 \n", "2 939.0 131.0 1140.0 114.0 1555.0 1074.0 \n", "3 948.0 172.0 1092.0 122.0 1584.0 1203.0 \n", "4 836.0 131.0 1205.0 116.0 1490.0 1110.0 \n", "\n", " T RH AH \n", "0 13.6 48.9 0.7578 \n", "1 13.3 47.7 0.7255 \n", "2 11.9 54.0 0.7502 \n", "3 11.0 60.0 0.7867 \n", "4 11.2 59.6 0.7888 " ], "text/html": [ "\n", " <div id="df-c5a1f726-fa73-445a-b709-83c389bd878f" class="colab-df-container">\n", "
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-35 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-35 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-35 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-35 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-35 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-35 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-35 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-35 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-35 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-35 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-35 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-35 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-35 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-35 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-35 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-35 a.estimator_doc_link.fitted:hover {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-35" class="sk-top-container"><div class="sk-text-repr-fallback">LinearRegression()In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-35" type="checkbox" checked><label for="sk-estimator-id-35" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
LinearRegression()" ] }, "metadata": {}, "execution_count": 367 } ] }, { "cell_type": "markdown", "source": [ "Linear Regression Prediction" ], "metadata": { "id": "chufnoF7a42o" } }, { "cell_type": "code", "source": [ "y_pred_linear = regressor_linear.predict(X_test_linear)" ], "metadata": { "id": "fKaTSZ-HbFo4" }, "execution_count": 368, "outputs": [] }, { "cell_type": "code", "source": [ "print(y_pred_linear)" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "v689OiKybbF7", "outputId": "f30f581a-0f1d-452f-9b62-bd0f53131396" }, "execution_count": 369, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[[-0.76773117]\n", " [-1.37562433]\n", " [-0.76229026]\n", " [-0.1119253 ]\n", " [-0.02192799]\n", " [-0.5996083 ]\n", " [ 0.37605778]\n", " [ 0.26734222]\n", " [ 0.13136009]\n", " [-0.75781629]\n", " [-0.12076649]\n", " [-0.35011255]\n", " [ 0.43219246]\n", " [ 1.44008568]\n", " [-0.76181976]\n", " [-0.39402796]\n", " [-0.58320991]\n", " [-0.03188809]\n", " [ 1.61930534]\n", " [-0.14972086]\n", " [ 0.53012356]\n", " [-0.0271239 ]\n", " [-0.09024426]\n", " [-0.12894498]\n", " [-0.41492291]\n", " [-0.77905947]\n", " [ 2.6144226 ]\n", " [ 0.0160978 ]\n", " [-1.3946524 ]\n", " [ 0.71072563]\n", " [-0.08032012]\n", " [-1.32468911]\n", " [-1.0021068 ]\n", " [ 0.11451272]\n", " [ 0.2391014 ]\n", " [-1.01332955]\n", " [-0.65939431]\n", " [-0.73273915]\n", " [ 1.33434187]\n", " [ 0.7879338 ]\n", " [-1.38866945]\n", " [ 1.54498073]\n", " [ 2.52127741]\n", " [-0.98135686]\n", " [-0.28640483]\n", " [ 1.37926982]\n", " [ 0.62246356]\n", " [ 0.43583808]\n", " [-0.43653401]\n", " [-0.86160429]\n", " [-0.74298952]\n", " [ 0.31277347]\n", " [ 0.60481042]\n", " [-0.15532351]\n", " [-0.56115055]\n", " [ 0.46930146]\n", " [ 0.10990823]\n", " [ 0.99369049]\n", " [-0.90157563]\n", " [ 0.60100145]\n", " [ 0.40962053]\n", " [-0.95823918]\n", " [-0.30846739]\n", " [-0.92235462]\n", " [-0.88437509]\n", " [ 2.67958714]\n", " [ 0.30779644]\n", " [-0.79766397]\n", " [-0.36996598]\n", " [-1.06926036]\n", " [-0.68567976]\n", " [ 0.07242948]\n", " [-0.70734803]\n", " [-0.42855256]\n", " [-0.51881652]\n", " [ 1.65803316]\n", " [ 1.41307627]\n", " [ 1.20507962]\n", " [-0.55901111]\n", " [-1.25952746]\n", " [ 0.53526853]\n", " [-1.14696771]\n", " [ 0.85879271]\n", " [ 0.58126153]\n", " [ 0.84533426]\n", " [-1.29683766]\n", " [ 0.47698978]\n", " [ 0.27518795]\n", " [-0.71895085]\n", " [-0.69410383]\n", " [-0.29697435]\n", " [-1.27180444]\n", " [-0.23743714]\n", " [ 2.99434187]\n", " [ 0.89113128]\n", " [ 0.38495809]\n", " [ 1.57914761]\n", " [-0.87421157]\n", " [-0.51603363]\n", " [-1.06072013]\n", " [-0.28060956]\n", " [ 0.15019638]\n", " [-0.32360448]\n", " [-0.89209154]\n", " [-0.6377437 ]\n", " [-0.57069173]\n", " [ 2.22291346]\n", " [-1.03548885]\n", " [-1.04451746]\n", " [ 2.63437147]\n", " [-0.56794141]\n", " [ 1.574542 ]\n", " [-1.03210292]\n", " [-0.20323141]\n", " [-0.28665312]\n", " [-0.60479998]\n", " [ 1.3642916 ]\n", " [-0.38929546]\n", " [-0.0087854 ]\n", " [-1.43937165]\n", " [-0.35651548]\n", " [-1.07163731]\n", " [ 0.18443989]\n", " [ 3.7083458 ]\n", " [-0.39928691]\n", " [ 0.29683465]\n", " [ 0.37437106]\n", " [-0.51238981]\n", " [-0.74590243]\n", " [-1.3041248 ]\n", " [-1.2959767 ]\n", " [-1.24658935]\n", " [-0.40011883]\n", " [-1.14879887]\n", " [-0.74648171]\n", " [-1.0961035 ]\n", " [-1.009316 ]\n", " [ 0.08288827]\n", " [ 2.02890911]\n", " [-0.94711549]\n", " [-0.74383563]\n", " [-1.14832726]\n", " [-0.89804119]\n", " [-0.25546882]\n", " [ 2.40022597]\n", " [-0.07128792]\n", " [ 2.42792109]\n", " [-0.97574729]\n", " [-0.95003151]\n", " [-0.43009528]\n", " [-0.83652233]\n", " [-0.42400043]\n", " [ 0.12604598]\n", " [ 2.30073163]\n", " [ 1.74956039]\n", " [-1.09933432]\n", " [-0.51805604]\n", " [-1.24353944]\n", " [-0.01596409]\n", " [-0.88575579]\n", " [ 0.62216985]\n", " [-0.51705971]\n", " [-1.07102512]\n", " [ 1.45731253]\n", " [ 0.07237917]\n", " [ 0.14651704]]\n" ] } ] }, { "cell_type": "markdown", "source": [ "Visualization" ], "metadata": { "id": "iF9AlSgsbk38" } }, { "cell_type": "code", "source": [ "plt.scatter(y_test_linear, y_pred_linear,color="green")\n", "\n", "plt.plot(\n", " [y_test_linear.min(), y_test_linear.max()],\n", " [y_test_linear.min(), y_test_linear.max()],color='red'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Linear Regression)")\n", "\n", "plt.show()" ], "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "vk-3LCgGcA9", "outputId": "a4903f3a-ff9d-44d4-e01c-840fd372ace4" }, "execution_count": 370, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjUAAAHHCAYAAABHp6kXAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAaAxJREFUeJzt3Xd8U3Xbx/FPGuigtGW1rBYKFRmCoCwRkCmgoCAgQ1GW4gBliOt+HOBCRRFUlgtQ2VAQUVFEqqioIIKoLJFZ9uoCWpqc549jK6ErTdOmCd/3/crr5pyccSVNzdXfuiyGYRiIiIiIeDk/TwcgIiIi4g5KakRERMQnKKkRERERn6CkRkRERHyCkhoRERHxCUpqRERExCcoqRERERGfoKRGREREfIKSGhEREfEJSmpEAIvFwrhx4zwdhse1bduWtm3bZm7v3bsXi8XC7NmzPRbTpS6NMTfJyclEREQwd+7cfN0jLi4Oi8VCXFxc/gOUYiM/nxVXPfHEEzRv3rxQ7yHOU1Ijbjdt2jQsFkuBftEPHTrEuHHj2Lx5s/sCK+YyvkgzHiVLlqRmzZrcfffd/PPPP54OL19+/PFHxo0bx5kzZzwax5QpUwgJCaFfv36Z+8aNG4fFYuHEiRMejKxwDRo0yOGzFBAQwJVXXskzzzzD+fPnPR2eTxk1ahRbtmxhxYoVng5FgBKeDkB8z9y5c4mOjuaXX37h77//5oorrsj3NQ4dOsT48eOJjo6mUaNG7g+yGHv44Ydp2rQpFy5cYNOmTbzzzjt89tlnbN26lSpVqhRpLNWrV+fcuXOULFkyX+f9+OOPjB8/nkGDBlGmTJnCCS4PFy5cYMqUKYwePRqr1Zqvc2+44QbOnTuHv79/IUVX+AICAnjvvfcASEhI4JNPPuH5559n9+7d+W658lZfffVVod+jUqVKdO/enddee41bb7210O8nuVNLjbjVnj17+PHHH5k0aRLh4eGXzX883al169YMGDCAwYMH89Zbb/Haa69x6tQp5syZk+M5KSkphRKLxWIhMDAw30lBcbBy5UqOHz9Onz598n2un58fgYGB+PkVz/9EGobBuXPncj2mRIkSDBgwgAEDBjB8+HC+/PJLrrvuOubPn8/Ro0eLKFJTeno6aWlpRXpPAH9//yJJTPv06cP333/vdS2qvqh4/saK15o7dy5ly5ala9eu9O7dO8ek5syZM4wePZro6GgCAgKIjIzk7rvv5sSJE8TFxdG0aVMABg8enNmEnjGuIzo6mkGDBmW55qX952lpaTzzzDM0btyYsLAwgoODad26NWvXrs336zp69CglSpRg/PjxWZ7bsWMHFouFt99+GzBbCMaPH0+tWrUIDAykfPnytGrVitWrV+f7vgDt27cHzIQR/us++euvv7jjjjsoW7YsrVq1yjz+448/pnHjxgQFBVGuXDn69evHgQMHslz3nXfeISYmhqCgIJo1a8a6deuyHJPTmJrt27fTp08fwsPDCQoKonbt2vzf//1fZnyPPvooADVq1Mj8+e3du7dQYszJ8uXLiY6OJiYmxulzMmQ3pqZt27bUr1+fv/76i3bt2lGqVCmqVq3Kq6++muX81NRUnn32Wa644goCAgKIioriscceIzU11eG4WbNm0b59eyIiIggICKBevXpMnz49y/Wio6Pp1q0bX375JU2aNCEoKIiZM2fm6zVZLBZatWqFYRhZvny/+OILWrduTXBwMCEhIXTt2pU///wzyzUWL15MvXr1CAwMpH79+ixbtoxBgwYRHR2deUzGZ+a1115j8uTJxMTEEBAQwF9//QWYn53evXtTrlw5AgMDadKkSZauG2d+h44cOcLgwYOJjIwkICCAypUr0717d4fPWXZjao4dO8bQoUOpWLEigYGBNGzYMMsfDBe/hozPYEBAAE2bNmXDhg1Z3peOHTsC8Mknn+T8A5Aioe4ncau5c+fSs2dP/P396d+/P9OnT2fDhg2ZSQqYgzdbt27Ntm3bGDJkCNdeey0nTpxgxYoVHDx4kLp16/Lcc8/xzDPPMGzYMFq3bg3A9ddfn69YEhMTee+99+jfvz/33nsvSUlJvP/++3Tu3JlffvklX91aFStWpE2bNixatIhnn33W4bmFCxditVq5/fbbAfNLfcKECdxzzz00a9aMxMRENm7cyKZNm7jxxhvz9RoAdu/eDUD58uUd9t9+++3UqlWLl156CcMwAHjxxRd5+umn6dOnD/fccw/Hjx/nrbfe4oYbbuC3337L7Ap6//33ue+++7j++usZNWoU//zzD7feeivlypUjKioq13h+//13WrduTcmSJRk2bBjR0dHs3r2bTz/9lBdffJGePXuyc+dO5s+fzxtvvEGFChUACA8PL7IYwewCu/baa51+n51x+vRpunTpQs+ePenTpw9Llizh8ccfp0GDBtx0000A2O12br31Vr7//nuGDRtG3bp12bp1K2+88QY7d+5k+fLlmdebPn06V111FbfeeislSpTg008/5cEHH8RutzN8+HCHe+/YsYP+/ftz3333ce+991K7du18x5/xhV+2bNnMfR999BEDBw6kc+fOvPLKK5w9e5bp06fTqlUrfvvtt8yE5bPPPqNv3740aNCACRMmcPr0aYYOHUrVqlWzvdesWbM4f/48w4YNIyAggHLlyvHnn3/SsmVLqlatyhNPPEFwcDCLFi2iR48eLF26lNtuuw1w7neoV69e/Pnnnzz00ENER0dz7NgxVq9ezf79+x2SrIudO3eOtm3b8vfffzNixAhq1KjB4sWLGTRoEGfOnGHkyJEOx8+bN4+kpCTuu+8+LBYLr776Kj179uSff/5x6JINCwsjJiaGH374gdGjR+f75yJuZIi4ycaNGw3AWL16tWEYhmG3243IyEhj5MiRDsc988wzBmDExsZmuYbdbjcMwzA2bNhgAMasWbOyHFO9enVj4MCBWfa3adPGaNOmTeZ2enq6kZqa6nDM6dOnjYoVKxpDhgxx2A8Yzz77bK6vb+bMmQZgbN261WF/vXr1jPbt22duN2zY0OjatWuu18rO2rVrDcD44IMPjOPHjxuHDh0yPvvsMyM6OtqwWCzGhg0bDMMwjGeffdYAjP79+zucv3fvXsNqtRovvviiw/6tW7caJUqUyNyflpZmREREGI0aNXJ4f9555x0DcHgP9+zZk+XncMMNNxghISHGvn37HO6T8bMzDMOYOHGiARh79uwp9Bizc+HCBcNisRiPPPJIlucy3r/jx4/neH7Gz2Lt2rWZ+9q0aWMAxocffpi5LzU11ahUqZLRq1evzH0fffSR4efnZ6xbt87hmjNmzDAA44cffsjcd/bs2Sz37ty5s1GzZk2HfdWrVzcAY9WqVTm/6IsMHDjQCA4ONo4fP24cP37c+Pvvv43XXnvNsFgsRv369TN/VklJSUaZMmWMe++91+H8I0eOGGFhYQ77GzRoYERGRhpJSUmZ++Li4gzAqF69eua+jM9MaGiocezYMYfrdujQwWjQoIFx/vz5zH12u924/vrrjVq1amXuy+t36PTp0wZgTJw4Mdf34dL/JkyePNkAjI8//jhzX1pamtGiRQujdOnS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KlWKl19+GTBbb0JDQ3nppZccumczHD9+HIAqVapQv359PvzwQ5KTkzOf//bbb9m6datT946IiKBt27bMnDmTw4cP53gvyPt36OzZs1lWRo6JiSEkJCTX37Obb76ZI0eOOIyLS09P56233qJ06dK0adPGqddyqYSEBHbv3p3vGZrifmqpkQJbsWIFSUlJOa6med1112UuxNe3b18effRRlixZwu23386QIUNo3Lgxp06dYsWKFcyYMYOGDRsSExNDmTJlmDFjBiEhIQQHB9O8eXNq1KjBPffcw5IlS+jSpQt9+vRh9+7dfPzxx1nWI+nWrRuxsbHcdtttdO3alT179jBjxgzq1avn8B/m/Orbty8DBgxg2rRpdO7cOcuKufXq1aNt27Y0btyYcuXKsXHjRpYsWcKIESNcvqczYmJieOGFF3jyySfZu3cvPXr0ICQkhD179rBs2TKGDRvG2LFjKVmyJC+88AL33Xcf7du3p2/fvuzZs4dZs2Y5NV7lzTffpFWrVlx77bUMGzaMGjVqsHfvXj777LPMshaNGzcG4P/+7//o168fJUuW5JZbbimyGAG6d+/ORx99xM6dO7NtFZo0aRKlSpVy2Ofn58f//vc/p66fk7vuuotFixZx//33s3btWlq2bInNZmP79u0sWrQoc62ZTp064e/vzy233MJ9991HcnIy7777LhEREdl+6btD+fLlGTx4MNOmTWPbtm3UrVuX6dOnc9ddd3HttdfSr18/wsPD2b9/P5999hktW7bMXH/ppZdeonv37rRs2ZLBgwdz+vRp3n77berXr+/079PUqVNp1aoVDRo04N5776VmzZocPXqU9evXc/DgQbZs2QLk/Tu0c+dOOnToQJ8+fahXrx4lSpRg2bJlHD161KEkxqWGDRvGzJkzGTRoEL/++ivR0dEsWbKEH374gcmTJxMSEuLS+/r1119jGAbdu3d36XxxoyKebSU+6JZbbjECAwONlJSUHI8ZNGiQUbJkSePEiROGYRjGyZMnjREjRhhVq1Y1/P39jcjISGPgwIGZzxuGOX2yXr16RokSJbJMK3799deNqlWrGgEBAUbLli2NjRs3Zpm+abfbjZdeesmoXr26ERAQYFxzzTXGypUrjYEDBzpMQTUM56Z0Z0hMTDSCgoKyTA3N8MILLxjNmjUzypQpYwQFBRl16tQxXnzxRSMt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OdZGU7dFRETypu6nYsrqZ1UdJxERkUKg7icRERHxCUpqRERExCcoqRERERGfoKRGREREfIKSGhEREfEJSmpERETEJyipEREREZ+gpEZERER8gpIaERER8QmX1YrCGRUhEhMTPRyJiIiIOCvjezuvyk6XVVKTlJQEQFRUlIcjERERkfxKSkoiLCwsx+cvq4KWdrudQ4cOERISgsVi8XQ4bpWYmEhUVBQHDhzwWLFOX6H30r30frqP3kv30vvpXoX5fhqGQVJSElWqVMHPL+eRM5dVS42fnx+RkZGeDqNQhYaG6pfTTfReupfeT/fRe+leej/dq7Dez9xaaDJooLCIiIj4BCU1IiIi4hOU1PiIgIAAnn32WQICAjwditfTe+leej/dR++le+n9dK/i8H5eVgOFRURExHeppUZERER8gpIaERER8QlKakRERMQnKKkRERERn6Ckxge9+OKLXH/99ZQqVYoyZcp4OhyvM3XqVKKjowkMDKR58+b88ssvng7JK3333XfccsstVKlSBYvFwvLlyz0dkteaMGECTZs2JSQkhIiICHr06MGOHTs8HZbXmj59OldffXXmInEtWrTgiy++8HRYPuHll1/GYrEwatQoj9xfSY0PSktL4/bbb+eBBx7wdCheZ+HChYwZM4Znn32WTZs20bBhQzp37syxY8c8HZrXSUlJoWHDhkydOtXToXi9b7/9luHDh/PTTz+xevVqLly4QKdOnUhJSfF0aF4pMjKSl19+mV9//ZWNGzfSvn17unfvzp9//unp0Lzahg0bmDlzJldffbXHYtCUbh82e/ZsRo0axZkzZzwditdo3rw5TZs25e233wbMemFRUVE89NBDPPHEEx6OzntZLBaWLVtGjx49PB2KTzh+/DgRERF8++233HDDDZ4OxyeUK1eOiRMnMnToUE+H4pWSk5O59tprmTZtGi+88AKNGjVi8uTJRR6HWmpE/pWWlsavv/5Kx44dM/f5+fnRsWNH1q9f78HIRBwlJCQA5hexFIzNZmPBggWkpKTQokULT4fjtYYPH07Xrl0d/vvpCZdVQUuR3Jw4cQKbzUbFihUd9lesWJHt27d7KCoRR3a7nVGjRtGyZUvq16/v6XC81tatW2nRogXnz5+ndOnSLFu2jHr16nk6LK+0YMECNm3axIYNGzwdilpqvMUTTzyBxWLJ9aEvXhHfN3z4cP744w8WLFjg6VC8Wu3atdm8eTM///wzDzzwAAMHDuSvv/7ydFhe58CBA4wcOZK5c+cSGBjo6XDUUuMtHnnkEQYNGpTrMTVr1iyaYHxUhQoVsFqtHD161GH/0aNHqVSpkoeiEvnPiBEjWLlyJd999x2RkZGeDser+fv7c8UVVwDQuHFjNmzYwJQpU5g5c6aHI/Muv/76K8eOHePaa6/N3Gez2fjuu+94++23SU1NxWq1Flk8Smq8RHh4OOHh4Z4Ow6f5+/vTuHFj1qxZkzmg1W63s2bNGkaMGOHZ4OSyZhgGDz30EMuWLSMuLo4aNWp4OiSfY7fbSU1N9XQYXqdDhw5s3brVYd/gwYOpU6cOjz/+eJEmNKCkxift37+fU6dOsX//fmw2G5s3bwbgiiuuoHTp0p4NrpgbM2YMAwcOpEmTJjRr1ozJkyeTkpLC4MGDPR2a10lOTubvv//O3N6zZw+bN2+mXLlyVKtWzYOReZ/hw4czb948PvnkE0JCQjhy5AgAYWFhBAUFeTg67/Pkk09y0003Ua1aNZKSkpg3bx5xcXF8+eWXng7N64SEhGQZ2xUcHEz58uU9M+bLEJ8zcOBAA8jyWLt2radD8wpvvfWWUa1aNcPf399o1qyZ8dNPP3k6JK+0du3abD+HAwcO9HRoXie79xEwZs2a5enQvNKQIUOM6tWrG/7+/kZ4eLjRoUMH46uvvvJ0WD6jTZs2xsiRIz1yb61TIyIiIj5Bs59ERETEJyipEREREZ+gpEZERER8gpIaERER8QlKakRERMQnKKkRERERn6CkRkRERHyCkhoRkUtYLBaWL1/u6TBEJJ+U1IiIR61fvx6r1UrXrl3zdV50dDSTJ08unKBExCspqRERj3r//fd56KGH+O677zh06JCnwxERL6akRkQ8Jjk5mYULF/LAAw/QtWtXZs+e7fD8p59+StOmTQkMDKRChQrcdtttALRt25Z9+/YxevRoLBYLFosFgHHjxtGoUSOHa0yePJno6OjM7Q0bNnDjjTdSoUIFwsLCaNOmDZs2bSrMlykiRURJjYh4zKJFi6hTpw61a9dmwIABfPDBB2SUo/vss8+47bbbuPnmm/ntt99Ys2YNzZo1AyA2NpbIyEiee+45Dh8+zOHDh52+Z1JSEgMHDuT777/np59+olatWtx8880kJSUVymsUkaJTwtMBiMjl6/3332fAgAEAdOnShYSEBL799lvatm3Liy++SL9+/Rg/fnzm8Q0bNgSgXLlyWK1WQkJCqFSpUr7u2b59e4ftd955hzJlyvDtt9/SrVu3Ar4iEfEktdSIiEfs2LGDX375hf79+wNQokQJ+vbty/vvvw/A5s2b6dChg9vve/ToUe69915q1apFWFgYoaGhJCcns3//frffS0SKllpqRMQj3n//fdLT06lSpUrmPsMwCAgI4O233yYoKCjf1/Tz88vsvspw4cIFh+2BAwdy8uRJpkyZQvXq1QkICKBFixakpaW59kJEpNhQS42IFLn09HQ+/PBDXn/9dTZv3pz52LJlC1WqVGH+/PlcffXVrFmzJsdr+Pv7Y7PZHPaFh4dz5MgRh8Rm8+bNDsf88MMPPPzww9x8881cddVVBAQEcOLECbe+PhHxDLXUiEiRW7lyJadPn2bo0KGEhYU5PNerVy/ef/99Jk6cSIcOHYiJiaFfv36kp6fz+eef8/jjjwPmOjXfffcd/fr1IyAggAoVKtC2bVuOHz/Oq6++Su/evVm1ahVffPEFoaGhmdevVasWH330EU2aNCExMZFHH33UpVYhESl+1FIjIkXu/fffp2PHjlkSGjCTmo0bN1KuXDkWL17MihUraNSoEe3bt+eXX37JPO65555j7969xMTEEB4eDkDdunWZNm0aU6dOpWHDhvzyyy+MHTs2y71Pnz7Ntddey1133cXDDz9MRERE4b5gESkSFuPSDmgRERERL6SWGhEREfEJSmpERETEJyipEREREZ+gpEZERER8gpIaERER8QlKakRERMQnKKkRERERn6CkRkRERHyCkhoRERHxCUpqRERExCcoqRERERGfoKRGREREfML/AzLN4+R807sCAAAAAElFTkSuQmCC\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "71fc5460" }, "source": [ "### Linear Regression Evaluation" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "bc8cdcff", "outputId": "46dfddc1-e36b-425c-c364-16af182a6770" }, "source": [ "from sklearn.metrics import r2_score, mean_absolute_error, mean_squared_error\n", "\n", "print('R-squared (Linear):', r2_score(y_test_linear, y_pred_linear))\n", "print('Mean Absolute Error (Linear):', mean_absolute_error(y_test_linear, y_pred_linear))\n", "print('Mean Squared Error (Linear):', mean_squared_error(y_test_linear, y_pred_linear))" ], "execution_count": 371, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "R-squared (Linear): 0.9721733275987304\n", "Mean Absolute Error (Linear): 0.12632048749296204\n", "Mean Squared Error (Linear): 0.029192142955325382\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "0be9ebea" }, "source": [ "## Polynomial Regression" ] }, { "cell_type": "code", "metadata": { "id": "06e35a1f" }, "source": [ "from sklearn.preprocessing import PolynomialFeatures\n", "from sklearn.linear_model import LinearRegression\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "\n", "# Create polynomial features\n", "poly_reg = PolynomialFeatures(degree = 2) # You can change the degree\n", "X_poly = poly_reg.fit_transform(X)\n", "\n", "# Scale the features (including polynomial ones)\n", "X_scaled_poly = StandardScaler().fit_transform(X_poly)\n", "y_scaled_poly = StandardScaler().fit_transform(y.values.reshape(-1,1))" ], "execution_count": 372, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "45a78a56" }, "source": [ "# Splitting the dataset into the Training set and Test set\n", "X_train_poly, X_test_poly, y_train_poly, y_test_poly = train_test_split(X_scaled_poly, y_scaled_poly, test_size = 0.2, random_state = 42)" ], "execution_count": 373, "outputs": [] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 80 }, "id": "3962b76c", "outputId": "f9ad68d5-2d00-444b-b3ad-df70fd24e130" }, "source": [ "# Training the Polynomial Regression model on the Training set\n", "regressor_poly = LinearRegression()\n", "regressor_poly.fit(X_train_poly, y_train_poly)" ], "execution_count": 374, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "LinearRegression()" ], "text/html": [ "<style>#sk-container-id-36 {\n", " / Definition of color scheme common for light and dark mode /\n", " --sklearn-color-text: #000;\n", " --sklearn-color-text-muted: #666;\n", " --sklearn-color-line: gray;\n", " / Definition of color scheme for unfitted estimators /\n", " --sklearn-color-unfitted-level-0: #fff5e6;\n", " --sklearn-color-unfitted-level-1: #f6e4d2;\n", " --sklearn-color-unfitted-level-2: #ffe0b3;\n", " --sklearn-color-unfitted-level-3: chocolate;\n", " / Definition of color scheme for fitted estimators /\n", " --sklearn-color-fitted-level-0: #f0f8ff;\n", " --sklearn-color-fitted-level-1: #d4ebff;\n", " --sklearn-color-fitted-level-2: #b3dbfd;\n", " --sklearn-color-fitted-level-3: cornflowerblue;\n", "\n", " / Specific color for light theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-icon: #696969;\n", "\n", " @media (prefers-color-scheme: dark) {\n", " / Redefinition of color scheme for dark theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-icon: #878787;\n", " }\n", "}\n", "\n", "#sk-container-id-36 {\n", " color: var(--sklearn-color-text);\n", "}\n", "\n", "#sk-container-id-36 pre {\n", " padding: 0;\n", "}\n", "\n", "#sk-container-id-36 input.sk-hidden--visually {\n", " border: 0;\n", " clip: rect(1px 1px 1px 1px);\n", " clip: rect(1px, 1px, 1px, 1px);\n", " height: 1px;\n", " margin: -1px;\n", " overflow: hidden;\n", " padding: 0;\n", " position: absolute;\n", " width: 1px;\n", "}\n", "\n", "#sk-container-id-36 div.sk-dashed-wrapped {\n", " border: 1px dashed var(--sklearn-color-line);\n", " margin: 0 0.4em 0.5em 0.4em;\n", " box-sizing: border-box;\n", " padding-bottom: 0.4em;\n", " background-color: var(--sklearn-color-background);\n", "}\n", "\n", "#sk-container-id-36 div.sk-container {\n", " / jupyter's
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-36 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-36 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-36 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-36 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-36 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-36 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-36 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-36 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-36 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-36 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-36 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-36 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-36 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-36 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-36 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-36 a.estimator_doc_link.fitted:hover {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-36" class="sk-top-container"><div class="sk-text-repr-fallback">LinearRegression()In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-36" type="checkbox" checked><label for="sk-estimator-id-36" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
LinearRegression()" ] }, "metadata": {}, "execution_count": 374 } ] }, { "cell_type": "markdown", "metadata": { "id": "3677eb3e" }, "source": [ "### Polynomial Regression Prediction" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "3dfb355f", "outputId": "df4da4e5-ebe3-457a-b764-c4cbd2c7fac1" }, "source": [ "# Predicting the Test set results\n", "y_pred_poly = regressor_poly.predict(X_test_poly)\n", "print(y_pred_poly)" ], "execution_count": 375, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[[-0.72024195]\n", " [-1.34011501]\n", " [-0.6934028 ]\n", " [-0.08873323]\n", " [-0.05811439]\n", " [-0.6199883 ]\n", " [ 0.45207776]\n", " [ 0.26841411]\n", " [ 0.09789254]\n", " [-0.70498552]\n", " [ 0.0605658 ]\n", " [-0.3710314 ]\n", " [ 0.33064008]\n", " [ 1.79459531]\n", " [-0.707325 ]\n", " [-0.3385171 ]\n", " [-0.75500796]\n", " [ 0.15360062]\n", " [ 1.51405761]\n", " [-0.05086795]\n", " [ 0.58802894]\n", " [-0.03893607]\n", " [-0.1224362 ]\n", " [-0.06771449]\n", " [-0.3716065 ]\n", " [-0.77767866]\n", " [ 3.36129435]\n", " [ 0.036723 ]\n", " [-1.35388719]\n", " [ 0.76788338]\n", " [-0.20180812]\n", " [-1.25831638]\n", " [-0.9711997 ]\n", " [ 0.13988006]\n", " [ 0.24375798]\n", " [-0.99802196]\n", " [-0.69212438]\n", " [-0.77300911]\n", " [ 1.35260048]\n", " [ 0.7610763 ]\n", " [-1.31936788]\n", " [ 1.1073545 ]\n", " [ 3.06028192]\n", " [-0.96980903]\n", " [-0.29284885]\n", " [ 1.41848034]\n", " [ 0.57447304]\n", " [ 0.42906574]\n", " [-0.32175218]\n", " [-0.8427774 ]\n", " [-0.75064526]\n", " [ 0.25347919]\n", " [ 0.49559673]\n", " [-0.03973889]\n", " [-0.43600049]\n", " [ 0.42287286]\n", " [ 0.07790745]\n", " [ 1.11776819]\n", " [-1.13275346]\n", " [ 0.54578297]\n", " [ 0.45226618]\n", " [-0.93762618]\n", " [-0.39324865]\n", " [-0.95047169]\n", " [-0.81719755]\n", " [ 2.5843971 ]\n", " [ 0.28337559]\n", " [-0.69378235]\n", " [-0.43098206]\n", " [-1.17958185]\n", " [-0.6491288 ]\n", " [ 0.18144263]\n", " [-0.74444951]\n", " [-0.45688702]\n", " [-0.46246023]\n", " [ 1.81857161]\n", " [ 1.61308387]\n", " [ 1.37907534]\n", " [-0.65923623]\n", " [-1.30562373]\n", " [ 0.3161606 ]\n", " [-1.09186293]\n", " [ 0.5935094 ]\n", " [ 0.53730144]\n", " [ 0.70807186]\n", " [-1.28565708]\n", " [ 0.44394187]\n", " [ 0.29418476]\n", " [-0.73029132]\n", " [-0.65527559]\n", " [-0.27188189]\n", " [-1.23773988]\n", " [-0.26082428]\n", " [ 3.04183217]\n", " [ 0.71229252]\n", " [ 0.32186369]\n", " [ 1.6296823 ]\n", " [-0.8614935 ]\n", " [-0.38524936]\n", " [-1.00855397]\n", " [-0.42477543]\n", " [ 0.14936738]\n", " [-0.33059476]\n", " [-0.82879394]\n", " [-0.7149104 ]\n", " [-0.47955865]\n", " [ 1.90832009]\n", " [-0.99079984]\n", " [-0.98354355]\n", " [ 2.5134455 ]\n", " [-0.62696747]\n", " [ 1.6018216 ]\n", " [-1.03277662]\n", " [-0.13625624]\n", " [-0.1752253 ]\n", " [-0.53589742]\n", " [ 0.93098814]\n", " [-0.52772167]\n", " [-0.0093618 ]\n", " [-1.15317885]\n", " [-0.3413182 ]\n", " [-1.17223476]\n", " [ 0.17478129]\n", " [ 4.55899161]\n", " [-0.42080611]\n", " [ 0.2518517 ]\n", " [ 0.45476612]\n", " [-0.45940995]\n", " [-0.76175039]\n", " [-1.26632987]\n", " [-1.31610306]\n", " [-1.14241795]\n", " [-0.32192653]\n", " [-1.15053455]\n", " [-0.70002748]\n", " [-1.11304823]\n", " [-1.07809821]\n", " [ 0.10614838]\n", " [ 1.84897437]\n", " [-1.02275249]\n", " [-0.64571455]\n", " [-1.12062755]\n", " [-0.84914873]\n", " [-0.24031106]\n", " [ 2.03296065]\n", " [-0.11301555]\n", " [ 2.49064975]\n", " [-0.90682667]\n", " [-0.9227882 ]\n", " [-0.46383822]\n", " [-0.92367971]\n", " [-0.3898441 ]\n", " [ 0.09651223]\n", " [ 2.52452394]\n", " [ 1.52102004]\n", " [-1.11492399]\n", " [-0.54713523]\n", " [-1.21819592]\n", " [-0.09232583]\n", " [-0.89440254]\n", " [ 0.57640389]\n", " [-0.53632345]\n", " [-0.90814744]\n", " [ 1.36133237]\n", " [ 0.11818612]\n", " [-0.01107078]]\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "7744e71d" }, "source": [ "### Visualization (Polynomial Regression)" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "f442f129", "outputId": "65bab85d-f653-4b25-aee5-07d3dc6b2031" }, "source": [ "plt.scatter(y_test_poly, y_pred_poly, color="orange")\n", "\n", "plt.plot(\n", " [y_test_poly.min(), y_test_poly.max()],\n", " [y_test_poly.min(), y_test_poly.max()], color='blue'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Polynomial Regression)")\n", "\n", "plt.show()" ], "execution_count": 376, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "iVBORw0KGgoAAAANSUhEUgAAAjUAAAHHCAYAAABHp6kXAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAZ69JREFUeJzt3Xd4U2UfxvFvultoy2pZLUNEkC0giLIEBRWRIaL4IqXIElAQHDgBBRGR5WCvoixHcaGiIktBWYKggoAsmQWhBQotbc77x6GF0EEa0qZJ7891ccE5OTnnl7Q0d5/zDIthGAYiIiIibs7L1QWIiIiIOINCjYiIiHgEhRoRERHxCAo1IiIi4hEUakRERMQjKNSIiIiIR1CoEREREY+gUCMiIiIeQaFGREREPIJCjbgti8XC8OHDXV2GyzVv3pzmzZunb+/btw+LxcLcuXNdVtPVrq4xO2fPniU8PJz58+fnWj0VKlSge/fuuXb+vDR8+HAsFotDz83J10Xy5mfObbfdxnPPPZer1/BkCjUCwOTJk7FYLDRs2NDhcxw+fJjhw4ezZcsW5xWWz61cuRKLxZL+x9fXlxtuuIFu3brxzz//uLq8HFm7di3Dhw/n9OnTLq1j0qRJBAcH88gjj6TvS/vgTvsTFBREtWrVePnll0lISHBhtQVDhQoVbN7/QoUK0aBBA+bNm+fq0jzO888/z/vvv8/Ro0ddXYpb8nF1AZI/zJ8/nwoVKrB+/Xp2797NjTfemONzHD58mBEjRlChQgXq1Knj/CLzsaeeeopbb72VixcvsnnzZqZPn87SpUvZtm0bZcqUydNaypcvz/nz5/H19c3R89auXcuIESPo3r07RYoUyZ3iruHixYtMmjSJp59+Gm9v7wyPT5kyhcKFC3P27Fm+++47Ro0axY8//sjPP//scGuFu3v55ZcZOnRorl+nTp06DBkyBIAjR44wc+ZMoqKiSEpKolevXrl+/fzg/Pnz+Pjk7sdmu3btCAkJYfLkybz22mu5ei1PpJYaYe/evaxdu5bx48cTFhaWq83+nqpJkyZ07dqV6Oho3n33Xd5++23+++8/YmJisnzOuXPncqUWi8VCQEBApqEgv/vqq6+Ii4ujc+fOmT7eqVMnunbtSt++fYmNjaVjx46sW7eOX375JY8rzT98fHwICAjI9euULVuWrl270rVrV5599ll++uknChcuzIQJE3L92lfLrf871xIQEJDrocbLy4tOnToxb948tN50zinUCPPnz6do0aK0adOGTp06ZRlqTp8+zdNPP02FChXw9/cnIiKCbt26ceLECVauXMmtt94KQHR0dHozdVq/jqz6MFx9Tz85OZlXX32VevXqERoaSqFChWjSpAkrVqzI8es6duwYPj4+jBgxIsNjO3fuxGKx8N577wFmC8GIESOoXLkyAQEBFC9enMaNG/P999/n+LoALVq0AMzACJdvn/z55588+uijFC1alMaNG6cf/+GHH1KvXj0CAwMpVqwYjzzyCAcPHsxw3unTp1OpUiUCAwNp0KABa9asyXBMVn1qduzYQefOnQkLCyMwMJAqVarw0ksvpdf37LPPAlCxYsX0r9++fftypcasfPbZZ1SoUIFKlSrZdfzV7/O5c+cYMmQIkZGR+Pv7U6VKFd5+++1sPxz++ecfLBZLph/Oa9euxWKxsHDhQuDy13H37t3pLVqhoaFER0eTmJho89yUlBRef/11KlWqhL+/PxUqVODFF18kKSnJ5rgKFSpw//33s3LlSurXr09gYCA1a9Zk5cqVAMTGxlKzZk0CAgKoV68ev/32m83zM+tTM2fOHFq0aEF4eDj+/v5Uq1aNKVOm2PGO2i8sLIyqVauyZ88em/1Wq5WJEydSvXp1AgICKFmyJH369OHUqVMZjhs+fDhlypQhKCiIO++8kz///DPDz4q5c+disVhYtWoV/fr1Izw8nIiIiPTHv/nmG5o0aUKhQoUIDg6mTZs2/PHHHzbXOnr0KNHR0URERODv70/p0qVp166dzff3xo0bad26NSVKlCAwMJCKFSvSo0cPm/Nk1qfmt99+49577yUkJITChQvTsmXLDCE77TX8/PPPDB48mLCwMAoVKkSHDh2Ii4vL8N7efffd7N+/v0DdyncW3X4S5s+fT8eOHfHz86NLly5MmTKFDRs2pIcUMDtvNmnShL/++osePXpQt25dTpw4wRdffMG///7LzTffzGuvvcarr75K7969adKkCQC33357jmpJSEhg5syZdOnShV69enHmzBlmzZpF69atWb9+fY5ua5UsWZJmzZrx0UcfMWzYMJvHFi9ejLe3Nw899BBgfjCMHj2anj170qBBAxISEti4cSObN2/m7rvvztFrANJ/0BcvXtxm/0MPPUTl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ie3bt2d7vux+gBctWjTTSd32799v81v8J598wg033EBsbKzN+a7u6JsT7du3p0+fPum3oP7++29eeOGFDMcVK1aM6OhooqOjOXv2LE2bNmX48OF2hRpHVapUCcMwqFixIjfddFOWx5UvXx4wfzu98jfTixcvsnfvXmrXrp3lc9PeX0e/fnlRI5gfQpUqVbJpNcyJ8uXL88MPP3DmzBmb1podO3bY1JeVe+65J31Kg4YNG5KYmMhjjz3mcC1Wq5Vdu3altxSBOSLv9OnT16zlenz55ZckJSXxxRdf2LQMODKCMDtt2rShWbNmvPHGG/Tp04dChQpRqVIlfvjhB+64444MIeRKaa9/9+7dNi0wJ0+evGYrVJq0Vrrw8HC7fqGoVKkSQ4YMYciQIezatYs6deowbtw4Pvzww/RjbrvtNm677TZGjRrFggUL+N///seiRYsy/RkQFhZGUFAQO3fuzPDYjh078PLysqtzfGYOHTpEcnKyzfeO2Ed9agqo8+fPExsby/3330+nTp0y/BkwYABnzpzhiy++AMzRA1u3bs0wagMu/5ZRqFAhgEzDS6VKlfjll19ITk5O3/fVV19lGBKc9pvMlb+5/Prrr6xbt87h11qkSBFat27NRx99xKJFi/Dz86N9+/Y2x5w8edJmu3Dhwtx4440Zht86W8eOHfH29mbEiBEZflszDCO9rvr16xMWFsbUqVNt3sO5c+decwbgsLAwmjZtyuzZszlw4ECGa6TJ6uuXFzWmadSoERs3brTr2Kvdd999pKampg/TTzNhwgQsFgv33ntvts/38fGhS5cufPTRR8ydO5eaNWvaffsxs1oAJk6caLN//PjxgBkIcktm/4fi4+OZM2eO06/1/PPPc/LkSWbMmAGYfZNSU1PTb+FdKSUlJf37oGXLlvj4+GQYZn711y47rVu3JiQkhDfeeCPTfjBpQ6UTExMzjKiqVKkSwcHB6f+/T506leF7O22kZVY/A7y9vWnVqhWff/65zdDwY8eOsWDBAho3bpx+CyynNm3aBOR89KiopabA+uKLLzhz5gwPPPBApo/fdttt6b+1Pvzwwzz77LN88sknPPTQQ/To0YN69erx33//8cUXXzB16lRq165NpUqVKFKkCFOnTiU4OJhChQrRsGFDKlasSM+ePfnkk0+455576Ny5M3v27OHDDz/MMB/J/fff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lsEms5aayMhI4uPjCQkJyauyRUQkH1izBrp3h3/+MbefeALeegsKF750QNoQbcC29eVSSGnySca5ZzKdpybSDDSap8ZpEhISCA0Nvebnt1uFmqvdddddVKpUiWnTptl1vL1vioiIeI7z5+Hll2HCBHPJg8hImD3bbK3JwJGQohmFc529n99u2acmjdVqtWmJERERudKvv0JUFOzcaW736GGu2xQamsUTIjtC2XY5Cyle3lCyubNLFwe4Tah54YUXuPfeeylXrhxnzpxhwYIFrFy5kmVpy6WKiIhckpRkLmswZgxYrVC6NMyYAW3a2PFkhRS35Tah5vjx43Tr1o0jR44QGhpKrVq1WLZsGXfffberSxMRkXzkt9/M1plt28zt//0P3nkHihVzbV2S+9wm1MwyJxIQERHJ1MWL8MYbMHIkpKRAWBhMnQod1V+3wHCbUCMiIpKV7dvN1pnNm83tBx+EKVPMYCMFh1vNUyMiInKllBR4802oV88MNEWLwoIF8PHHCjQFkVpqRETELe3cabbO/HppVYP774fp081OwVIwqaVGRETcitUKEydCnTpmoAkJgTlz4IsvFGgKOrXUiIiI2/jnH4iOhtWrze277zYXpNQqOAJqqRERETdgGGbH31q1zEBTqJA5smnZMgUauUwtNSIikq8dOACPPw4//GBuN2tmLnNwww2urUvyH7XUiIhIvmQYZnipWdMMNIGBZl+aH39UoJHMqaVGRETyncOHoXdvWLrU3L7tNoiJgZtucm1dkr+ppUZERPINwzDnmalRwww0fn7m+k0//aRAI9emlhoREckXjh+HJ56A2Fhzu149s3WmenXX1iXuQy01IiLicp9+aoaX2Fjw8YHXXoN16xRoJGfUUiMiIpdZUyFuDZw/AoGlIawJeHnn2uX++w8GDICFC83tmjXN1plbbsm1S4oHU6gRERHTwVjYNBAS/728LygC6k2CSOcvdf3VV9CrFxw9Ct7eMHQovPqq2Y9GxBG6/SQiImagWdPJNtAAJB4y9x+Mddql4uPNWYHbtjUDTdWqsHYtjBypQCPXR6FGRKSgs6aaLTQYmTx4ad+mQeZxmT332ErYt9D8O7NjrvDdd+bIprlzwWKBIUPM1bUbNLiuVyAC6PaTiIjErcnYQmPDgMSD5nElm1/enYPbVWfOwLPPwrRp5nalSmawadzYWS9C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\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "46cbf664" }, "source": [ "## Support Vector Regression (SVR)" ] }, { "cell_type": "code", "metadata": { "id": "a93b54c9" }, "source": [ "from sklearn.svm import SVR\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "\n", "# Scale features and target specifically for SVR\n", "X_scaled_svr = StandardScaler().fit_transform(X)\n", "y_scaled_svr = StandardScaler().fit_transform(y.values.reshape(-1,1))" ], "execution_count": 377, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "ab63d640" }, "source": [ "# Splitting the dataset into the Training set and Test set for SVR\n", "X_train_svr, X_test_svr, y_train_svr, y_test_svr = train_test_split(X_scaled_svr, y_scaled_svr, test_size = 0.2, random_state = 42)" ], "execution_count": 378, "outputs": [] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 80 }, "id": "d103a02d", "outputId": "cd24d2e6-727c-426f-ecc4-eae8d54adcfb" }, "source": [ "# Training the SVR model on the Training set\n", "regressor_svr = SVR(kernel = 'rbf') # Radial Basis Function kernel is common for SVR\n", "regressor_svr.fit(X_train_svr, y_train_svr.ravel()) # .ravel() to convert y to 1D array" ], "execution_count": 379, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "SVR()" ], "text/html": [ "<style>#sk-container-id-37 {\n", " / Definition of color scheme common for light and dark mode /\n", " --sklearn-color-text: #000;\n", " --sklearn-color-text-muted: #666;\n", " --sklearn-color-line: gray;\n", " / Definition of color scheme for unfitted estimators /\n", " --sklearn-color-unfitted-level-0: #fff5e6;\n", " --sklearn-color-unfitted-level-1: #f6e4d2;\n", " --sklearn-color-unfitted-level-2: #ffe0b3;\n", " --sklearn-color-unfitted-level-3: chocolate;\n", " / Definition of color scheme for fitted estimators /\n", " --sklearn-color-fitted-level-0: #f0f8ff;\n", " --sklearn-color-fitted-level-1: #d4ebff;\n", " --sklearn-color-fitted-level-2: #b3dbfd;\n", " --sklearn-color-fitted-level-3: cornflowerblue;\n", "\n", " / Specific color for light theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-icon: #696969;\n", "\n", " @media (prefers-color-scheme: dark) {\n", " / Redefinition of color scheme for dark theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-icon: #878787;\n", " }\n", "}\n", "\n", "#sk-container-id-37 {\n", " color: var(--sklearn-color-text);\n", "}\n", "\n", "#sk-container-id-37 pre {\n", " padding: 0;\n", "}\n", "\n", "#sk-container-id-37 input.sk-hidden--visually {\n", " border: 0;\n", " clip: rect(1px 1px 1px 1px);\n", " clip: rect(1px, 1px, 1px, 1px);\n", " height: 1px;\n", " margin: -1px;\n", " overflow: hidden;\n", " padding: 0;\n", " position: absolute;\n", " width: 1px;\n", "}\n", "\n", "#sk-container-id-37 div.sk-dashed-wrapped {\n", " border: 1px dashed var(--sklearn-color-line);\n", " margin: 0 0.4em 0.5em 0.4em;\n", " box-sizing: border-box;\n", " padding-bottom: 0.4em;\n", " background-color: var(--sklearn-color-background);\n", "}\n", "\n", "#sk-container-id-37 div.sk-container {\n", " / jupyter's
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-37 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-37 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-37 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-37 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-37 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-37 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-37 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-37 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-37 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-37 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-37 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-37 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-37 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-37 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-37 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-37 a.estimator_doc_link.fitted:hover {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-37" class="sk-top-container"><div class="sk-text-repr-fallback">SVR()In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-37" type="checkbox" checked><label for="sk-estimator-id-37" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
SVR()" ] }, "metadata": {}, "execution_count": 379 } ] }, { "cell_type": "markdown", "metadata": { "id": "a83fca74" }, "source": [ "### SVR Prediction" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "fe0e0ee2", "outputId": "606ea68b-3fc2-4378-e2c1-9bd4c43b29cf" }, "source": [ "# Predicting the Test set results for SVR\n", "y_pred_svr = regressor_svr.predict(X_test_svr)\n", "print(y_pred_svr)" ], "execution_count": 380, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[-7.70200681e-01 -1.18776221e+00 -7.04544872e-01 -3.28187042e-02\n", " -3.90272459e-02 -5.54596623e-01 4.43834698e-01 3.26576184e-01\n", " 2.00403747e-01 -7.81110206e-01 1.26889040e-02 -3.91086669e-01\n", " 2.69803847e-01 1.25930369e+00 -7.34061653e-01 -3.83835002e-01\n", " -5.24604809e-01 2.33456564e-02 1.47401759e+00 -1.09625287e-01\n", " 5.45836416e-01 9.44835350e-03 -1.02694045e-01 -5.17965302e-02\n", " -4.59572533e-01 -7.55735861e-01 2.46353413e+00 3.19287662e-02\n", " -1.36561005e+00 6.97667639e-01 -1.39853328e-01 -1.28834838e+00\n", " -1.00848113e+00 6.36513563e-02 2.52788752e-01 -9.92172912e-01\n", " -7.01535151e-01 -7.18278650e-01 1.42004528e+00 8.01470854e-01\n", " -1.32139945e+00 1.13130471e+00 2.65676793e+00 -9.53930629e-01\n", " -3.54041073e-01 1.46518758e+00 6.29307396e-01 4.93138139e-01\n", " -3.81570869e-01 -8.75484878e-01 -7.07973195e-01 2.64224041e-01\n", " 4.60102418e-01 -6.07239806e-02 -4.61330589e-01 4.88609516e-01\n", " 5.92982557e-02 1.05902868e+00 -9.80058972e-01 4.97417261e-01\n", " 5.16495168e-01 -9.20844654e-01 -2.78399534e-01 -9.49949932e-01\n", " -8.41438142e-01 2.54629152e+00 3.64457032e-01 -7.93517137e-01\n", " -3.93212725e-01 -1.07096385e+00 -5.86472637e-01 4.35238031e-02\n", " -7.33522130e-01 -4.75403005e-01 -5.57708033e-01 1.91222259e+00\n", " 1.33242769e+00 1.47824036e+00 -5.73523732e-01 -1.10608863e+00\n", " 3.77377648e-01 -1.00237458e+00 7.35680885e-01 5.11904460e-01\n", " 7.58480950e-01 -1.21038564e+00 3.48398412e-01 2.43539418e-01\n", " -7.79971497e-01 -7.53412024e-01 -3.10545554e-01 -1.02505752e+00\n", " -2.73439332e-01 2.76426292e+00 7.35239263e-01 3.14955592e-01\n", " 1.62375487e+00 -8.70965389e-01 -4.44834990e-01 -9.43117087e-01\n", " -3.14449737e-01 1.22191788e-01 -3.66340450e-01 -8.72898671e-01\n", " -6.34951243e-01 -6.05060306e-01 1.91665773e+00 -1.03988985e+00\n", " -9.83727953e-01 2.83873557e+00 -6.36842236e-01 1.62503755e+00\n", " -1.07048861e+00 -1.17586927e-01 -2.38299325e-01 -4.43155493e-01\n", " 1.19162520e+00 -4.32716884e-01 2.26062853e-03 -9.60919377e-01\n", " -2.36521494e-01 -1.16913665e+00 2.20859018e-01 2.86669621e+00\n", " -3.68279546e-01 3.05486427e-01 4.19227734e-01 -4.83061922e-01\n", " -7.67699539e-01 -1.27055780e+00 -1.45083507e+00 -1.11239805e+00\n", " -4.65687425e-01 -1.24102273e+00 -7.20326414e-01 -1.05132522e+00\n", " -7.82411440e-01 1.05256417e-01 2.15961161e+00 -9.57816583e-01\n", " -6.34841282e-01 -1.15745920e+00 -8.01674585e-01 -2.54412836e-01\n", " 2.00623992e+00 -1.16744916e-01 2.80089995e+00 -9.03651341e-01\n", " -8.82097581e-01 -4.18272383e-01 -8.57969635e-01 -3.54291633e-01\n", " 2.01475740e-01 2.46455726e+00 1.51553663e+00 -1.08356383e+00\n", " -5.43102166e-01 -1.34997547e+00 -4.32847340e-02 -9.21895876e-01\n", " 5.15850758e-01 -5.13328485e-01 -9.58279514e-01 1.41750706e+00\n", " 1.18115149e-01 8.57499445e-02]\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "57ec9cf7" }, "source": [ "### Visualization (SVR)" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "25e099e1", "outputId": "ce601ed3-b1dc-4a11-a443-bf06b6599694" }, "source": [ "plt.scatter(y_test_svr, y_pred_svr, color="purple")\n", "\n", "plt.plot(\n", " [y_test_svr.min(), y_test_svr.max()],\n", " [y_test_svr.min(), y_test_svr.max()], color='green'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Support Vector Regression)")\n", "\n", "plt.show()" ], "execution_count": 381, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "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2xMhojKDPTVEVOqys7Oxdu1a/Pzzz7h8+bLy35UrV1CtWjVs2rQJjRo1wqFDhwo8h4WFBeRyucoxZ2dnPH36VCWxuXz5skqbv//+GxMmTECvXr1Qv359WFpa4sWLF3p9fkRkGOypIaJSt3v3brx69QqjR4+Gg4ODyn1BQUFYsWIF5s6di65du8LT0xODBw9GdnY29u7di88//xxAzj41x44dw+DBg2FpaYlKlSqhU6dOiI+Px48//ojg4GBERkZi3759kEqlyvPXqVMH69atQ/PmzSGTyTB16lSdeoWIqOxhTw0RlboVK1agW7du+RIaICepOX/+PJycnLBt2zbs3LkTTZo0QZcuXXD27Fllu6+//hoxMTHw9PSEs7MzAMDb2xsLFy7EH3/8gcaNG+Ps2bP49NNP81371atXaNq0Kd59911MmDABLi4uJfuEiahUiIS8A9BERERERog9NURERGQSmNQQERGRSWBSQ0RERCaBSQ0RERGZBCY1REREZBKY1BAREZFJYFJDREREJoFJDREREZkEJjVERERkEpjUEBERkUlgUkNEREQmgUkNERERmYT/B4mvEUiDyFvLAAAAAElFTkSuQmCC\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "3101280a" }, "source": [ "## Decision Tree Regression" ] }, { "cell_type": "code", "metadata": { "id": "4b83d805" }, "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "\n", "# Scale features and target specifically for Decision Tree Regression\n", "X_scaled_dt = StandardScaler().fit_transform(X)\n", "y_scaled_dt = StandardScaler().fit_transform(y.values.reshape(-1,1))\n" ], "execution_count": 382, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "1f42d904" }, "source": [ "# Splitting the dataset into the Training set and Test set for Decision Tree Regression\n", "X_train_dt, X_test_dt, y_train_dt, y_test_dt = train_test_split(X_scaled_dt, y_scaled_dt, test_size = 0.2, random_state = 42)" ], "execution_count": 383, "outputs": [] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 80 }, "id": "1b52c3a0", "outputId": "8c639caa-d11e-4fd9-81f7-293480945c8c" }, "source": [ "# Training the Decision Tree Regression model on the Training set\n", "regressor_dt = DecisionTreeRegressor(random_state = 42)\n", "regressor_dt.fit(X_train_dt, y_train_dt)" ], "execution_count": 384, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "DecisionTreeRegressor(random_state=42)" ], "text/html": [ "<style>#sk-container-id-38 {\n", " / Definition of color scheme common for light and dark mode /\n", " --sklearn-color-text: #000;\n", " --sklearn-color-text-muted: #666;\n", " --sklearn-color-line: gray;\n", " / Definition of color scheme for unfitted estimators /\n", " --sklearn-color-unfitted-level-0: #fff5e6;\n", " --sklearn-color-unfitted-level-1: #f6e4d2;\n", " --sklearn-color-unfitted-level-2: #ffe0b3;\n", " --sklearn-color-unfitted-level-3: chocolate;\n", " / Definition of color scheme for fitted estimators /\n", " --sklearn-color-fitted-level-0: #f0f8ff;\n", " --sklearn-color-fitted-level-1: #d4ebff;\n", " --sklearn-color-fitted-level-2: #b3dbfd;\n", " --sklearn-color-fitted-level-3: cornflowerblue;\n", "\n", " / Specific color for light theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-icon: #696969;\n", "\n", " @media (prefers-color-scheme: dark) {\n", " / Redefinition of color scheme for dark theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-icon: #878787;\n", " }\n", "}\n", "\n", "#sk-container-id-38 {\n", " color: var(--sklearn-color-text);\n", "}\n", "\n", "#sk-container-id-38 pre {\n", " padding: 0;\n", "}\n", "\n", "#sk-container-id-38 input.sk-hidden--visually {\n", " border: 0;\n", " clip: rect(1px 1px 1px 1px);\n", " clip: rect(1px, 1px, 1px, 1px);\n", " height: 1px;\n", " margin: -1px;\n", " overflow: hidden;\n", " padding: 0;\n", " position: absolute;\n", " width: 1px;\n", "}\n", "\n", "#sk-container-id-38 div.sk-dashed-wrapped {\n", " border: 1px dashed var(--sklearn-color-line);\n", " margin: 0 0.4em 0.5em 0.4em;\n", " box-sizing: border-box;\n", " padding-bottom: 0.4em;\n", " background-color: var(--sklearn-color-background);\n", "}\n", "\n", "#sk-container-id-38 div.sk-container {\n", " / jupyter's
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-38 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-38 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-38 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-38 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-38 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-38 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-38 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-38 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-38 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-38 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-38 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-38 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-38 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-38 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-38 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-38 a.estimator_doc_link.fitted:hover {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-38" class="sk-top-container"><div class="sk-text-repr-fallback">DecisionTreeRegressor(random_state=42)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-38" type="checkbox" checked><label for="sk-estimator-id-38" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
DecisionTreeRegressor(random_state=42)" ] }, "metadata": {}, "execution_count": 384 } ] }, { "cell_type": "markdown", "metadata": { "id": "17924965" }, "source": [ "### Decision Tree Regression Prediction" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "f60c5bc7", "outputId": "41a68255-1158-48bd-e416-2d92f45e2e93" }, "source": [ "# Predicting the Test set results for Decision Tree Regression\n", "y_pred_dt = regressor_dt.predict(X_test_dt)\n", "print(y_pred_dt)" ], "execution_count": 385, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[-0.7479302 -1.17387185 -0.81892047 0.10395311 -0.10901772 -0.46396909\n", " 0.24593366 0.45890449 -0.03802744 -0.7479302 -0.10901772 -0.32198854\n", " 0.17494339 1.38177808 -1.0318913 -0.39297882 -0.46396909 0.17494339\n", " 1.66573918 -0.18000799 0.24593366 -0.03802744 -0.39297882 0.10395311\n", " -0.46396909 -0.81892047 2.94356415 0.03296284 -1.17387185 0.60088504\n", " -0.10901772 -1.31585241 -0.88991075 -0.03802744 0.24593366 -0.88991075\n", " -0.7479302 -0.60594965 1.3107878 0.88484615 -1.31585241 1.16880725\n", " 2.09168084 -0.96090103 -0.39297882 1.3107878 0.88484615 0.45890449\n", " -0.39297882 -0.81892047 -0.67693992 0.38791422 0.81385587 0.17494339\n", " -0.18000799 0.24593366 0.10395311 0.95583642 -0.81892047 0.24593366\n", " 0.81385587 -0.88991075 -0.53495937 -0.81892047 -0.7479302 2.94356415\n", " 0.38791422 -0.67693992 -0.53495937 -1.10288158 -0.60594965 -0.32198854\n", " -0.7479302 -0.60594965 -0.53495937 1.59474891 1.16880725 1.38177808\n", " -1.0318913 -1.31585241 0.38791422 -1.10288158 0.67187532 0.24593366\n", " 0.52989477 -1.24486213 0.38791422 0.52989477 -0.88991075 -0.81892047\n", " -0.53495937 -1.10288158 -0.53495937 3.72445719 0.7428656 0.38791422\n", " 1.52375863 -1.10288158 -0.60594965 -1.10288158 -0.32198854 0.03296284\n", " -0.25099827 -0.81892047 -0.7479302 -0.67693992 1.66573918 -0.81892047\n", " -1.10288158 3.01455443 -0.25099827 1.16880725 -1.0318913 0.03296284\n", " -0.32198854 -0.53495937 1.52375863 -0.53495937 -0.03802744 -1.17387185\n", " -0.25099827 -1.31585241 0.03296284 3.72445719 -0.39297882 0.38791422\n", " 0.38791422 -0.53495937 -0.67693992 -1.17387185 -1.45783296 -0.96090103\n", " -0.46396909 -1.17387185 -0.67693992 -0.96090103 -0.7479302 -0.03802744\n", " 2.65960305 -1.10288158 -0.60594965 -1.17387185 -0.88991075 -0.32198854\n", " 1.94970029 -0.25099827 2.23366139 -0.88991075 -0.96090103 -0.39297882\n", " -0.96090103 -0.53495937 0.31692394 2.09168084 1.80771974 -1.10288158\n", " -0.60594965 -1.38684268 -0.10901772 -0.88991075 0.7428656 -0.32198854\n", " -1.0318913 1.73672946 -0.03802744 0.17494339]\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "345bacba" }, "source": [ "### Visualization (Decision Tree Regression)" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "2150d0a1", "outputId": "39f12070-c4f8-470c-b640-455ebb2a6ac0" }, "source": [ "plt.scatter(y_test_dt, y_pred_dt, color="blue")\n", "\n", "plt.plot(\n", " [y_test_dt.min(), y_test_dt.max()],\n", " [y_test_dt.min(), y_test_dt.max()], color='red'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Decision Tree Regression)")\n", "\n", "plt.show()" ], "execution_count": 386, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "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IdkPJ0e1bduWTp06MXXqVBo1apRkummFChWoW7cuVatWJSQkhB07drBixQr69evn9DUdER4ezpgxYxgxYgRHjhyhRYsW5M+fn8OHD/P555/z3HPPMXToUHLmzMmYMWPo3bs39evXp23bthw+fJg5c+Y4VK/y4YcfUqtWLapUqcJzzz1HmTJlOHLkCN988038h0DVqlUBeOWVV2jXrh05c+bkqaeeyrQYAZo3b86CBQv4+++/k70DsGLFCvLly0dsbGx8R+FNmzZRqVIlPv300/jj/Pz8mDlzJo0bN+a+++6jW7dulChRghMnTrBmzRqCgoL4+uuvAXjrrbf44YcfqFOnTvw05lOnTvHpp5+ycePGZKcm//zzz/Tr14/WrVtz9913c+vWLRYsWIC/v3+qtWfDhw9nyZIlNG7cmAEDBhASEsK8efM4fPgwn332WaZ3H07s2WefZfny5fTp04c1a9bw6KOPYrVa2bdvH8uXL4/v6+Loe8IZw4YNo3Xr1sydO5c+ffowZcoUatWqRcWKFenVqxd33XUXZ86cYcuWLfz777/s3bsXgJdeeomFCxfy2GOP0b9///gp3SVLluTixYsODekMGzaMr776iqZNm8ZPjb569Sq//fYbK1as4MiRIxQqVIiePXty8eJF6tevT2hoKEePHmXy5MlUrlw5/g6LM79TKlWqRJcuXZgxYwaXLl2iTp06bNu2jXnz5tGiRYv4CR3pdfbsWX799Vf69u3r1ON9VmZOtRL3euqpp4xcuXKl2kW0a9euRs6cOY3z588bhmFOj+zXr59RokQJIyAgwAgNDTW6dOkS/33DMIwvv/zSqFChgpEjR44k04rff/99o0SJEkZgYKDx6KOPGjt27EgypTsuLs546623jFKlShmBgYHGgw8+aKxcudLo0qWLUapUKbv4SEdH4aioKCN37twGYCxcuDDJ98eMGWNUr17dKFCggJE7d27j3nvvNcaOHWvExsamet6UOgonltaU5M8++8yoVauWkTdvXiNv3rzGvffea/Tt29fYv3+/3XFTp041ypQpYwQGBhrVqlUz1q9fn+Q1TG5Kt2EYxu+//248/fTTRoECBYxcuXIZ99xzj/Haa6/ZHTN69GijRIkShp+fX5JpsK6MMSUxMTFGoUKFjNGjRyf7+tm+cuXKZYSGhhpNmzY1Zs+ebTfdN6Hdu3cb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pKfDEREvpqRGRDwmOjqaZcuW8fzzz9OkSRPmzp1r9/2vv/6ahx56iFy5clGoUCGefvppAOrWrcvRo0cZPHgwFosFi8UCwBtvvEHlypXtzjFx4kRKly4dv719+3Yee+wxChUqRHBwMHXq1GHXrl3ufJoikkmU1IiIxyxfvpx7772Xe+65h06dOjF79mxsy9F98803PP300zz55JPs3r2b1atXU716dQAiIyMJDQ3lzTff5NSpU5w6dcrha165coUuXbqwceNGtm7dSrly5XjyySe5cuWKW56jiGSeHJ4OQESyr1mzZtGpUycAnnjiCS5fvsy6deuoW7cuY8eOpV27dowaNSr++EqVKgEQEhKCv78/+fPnp1ixYum6Zv369e22Z8yYQYECBVi3bh1NmzbN4DMSEU/SnRoR8Yj9+/ezbds22rdvD0COHDlo27Yts2bNAmDPnj00aNDA5dc9c+YMvXr1oly5cgQHBxMUFER0dDTHjh1z+bVEJHPpTo2IeMSsWbO4desWxYsXj99nGAaBgYF89NFH5M6dO93n9PPzix++srl586bddpcuXbhw4QKTJk2iVKlSBAYGUqNGDWJjY517IiKSZehOjYhkulu3bjF//nzef/999uzZE/+1d+9eihcvzpIlS3jggQdYvXp1iucICAjAarXa7StcuDCnT5+2S2z27Nljd8ymTZsYMGAATz75JPfddx+BgYGcP3/epc9PRDxDd2pEJNOtXLmS//77jx49ehAcHGz3vWeeeYZZs2Yxfvx4GjRoQHh4OO3atePWrVt8++23vPzyy4DZp2b9+vW0a9eOwMBAChUqRN26dTl37hzvvvsurVq14rvvvmPVqlUEBQXFn79cuXIsWLCAatWqERUVxbBhw5y6KyQiWY/u1IhIpps1axYNGzZMktCAmdTs2LGDkJAQPv30U7766isqV65M/fr12bZtW/xxb775JkeOHCE8PJzChQsDUL58eaZOncqUKVOoVKkS27ZtY+jQoUmu/d9//1GlShWeffZZBgwYQJEiRdz7hEUkU1iMxAPQIiIiIl5Id2pERETEJyipEREREZ+gpEZERER8gpIaERER8QlKakRERMQnKKkRERERn6CkRkRERHyCkhoRERHxCUpqRERExCcoqRERERGfoKRGREREfIKSGhEREfEJ/we5hMisAz3DEQAAAABJRU5ErkJggg==\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "1a1780aa" }, "source": [ "## Decision Tree Regression" ] }, { "cell_type": "code", "metadata": { "id": "c79370fc" }, "source": [ "from sklearn.tree import DecisionTreeRegressor\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "\n", "# Scale features and target specifically for Decision Tree Regression\n", "X_scaled_dt = StandardScaler().fit_transform(X)\n", "y_scaled_dt = StandardScaler().fit_transform(y.values.reshape(-1,1))\n" ], "execution_count": 387, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "2825b719" }, "source": [ "# Splitting the dataset into the Training set and Test set for Decision Tree Regression\n", "X_train_dt, X_test_dt, y_train_dt, y_test_dt = train_test_split(X_scaled_dt, y_scaled_dt, test_size = 0.2, random_state = 42)" ], "execution_count": 388, "outputs": [] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 80 }, "id": "a22936d4", "outputId": "14e4fc94-3db6-4b9f-90fd-f59ade594d23" }, "source": [ "# Training the Decision Tree Regression model on the Training set\n", "regressor_dt = DecisionTreeRegressor(random_state = 42)\n", "regressor_dt.fit(X_train_dt, y_train_dt)" ], "execution_count": 389, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "DecisionTreeRegressor(random_state=42)" ], "text/html": [ "<style>#sk-container-id-39 {\n", " / Definition of color scheme common for light and dark mode /\n", " --sklearn-color-text: #000;\n", " --sklearn-color-text-muted: #666;\n", " --sklearn-color-line: gray;\n", " / Definition of color scheme for unfitted estimators /\n", " --sklearn-color-unfitted-level-0: #fff5e6;\n", " --sklearn-color-unfitted-level-1: #f6e4d2;\n", " --sklearn-color-unfitted-level-2: #ffe0b3;\n", " --sklearn-color-unfitted-level-3: chocolate;\n", " / Definition of color scheme for fitted estimators /\n", " --sklearn-color-fitted-level-0: #f0f8ff;\n", " --sklearn-color-fitted-level-1: #d4ebff;\n", " --sklearn-color-fitted-level-2: #b3dbfd;\n", " --sklearn-color-fitted-level-3: cornflowerblue;\n", "\n", " / Specific color for light theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-icon: #696969;\n", "\n", " @media (prefers-color-scheme: dark) {\n", " / Redefinition of color scheme for dark theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-icon: #878787;\n", " }\n", "}\n", "\n", "#sk-container-id-39 {\n", " color: var(--sklearn-color-text);\n", "}\n", "\n", "#sk-container-id-39 pre {\n", " padding: 0;\n", "}\n", "\n", "#sk-container-id-39 input.sk-hidden--visually {\n", " border: 0;\n", " clip: rect(1px 1px 1px 1px);\n", " clip: rect(1px, 1px, 1px, 1px);\n", " height: 1px;\n", " margin: -1px;\n", " overflow: hidden;\n", " padding: 0;\n", " position: absolute;\n", " width: 1px;\n", "}\n", "\n", "#sk-container-id-39 div.sk-dashed-wrapped {\n", " border: 1px dashed var(--sklearn-color-line);\n", " margin: 0 0.4em 0.5em 0.4em;\n", " box-sizing: border-box;\n", " padding-bottom: 0.4em;\n", " background-color: var(--sklearn-color-background);\n", "}\n", "\n", "#sk-container-id-39 div.sk-container {\n", " / jupyter's
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-39 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-39 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-39 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-39 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-39 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-39 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-39 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-39 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-39 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-39 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-39 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-39 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-39 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-39 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-39 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-39 a.estimator_doc_link.fitted:hover {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-39" class="sk-top-container"><div class="sk-text-repr-fallback">DecisionTreeRegressor(random_state=42)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-39" type="checkbox" checked><label for="sk-estimator-id-39" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
DecisionTreeRegressor(random_state=42)" ] }, "metadata": {}, "execution_count": 389 } ] }, { "cell_type": "markdown", "metadata": { "id": "2140f2ad" }, "source": [ "### Decision Tree Regression Prediction" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "4474409c", "outputId": "09e29701-758b-4765-ab29-492b069c1199" }, "source": [ "# Predicting the Test set results for Decision Tree Regression\n", "y_pred_dt = regressor_dt.predict(X_test_dt)\n", "print(y_pred_dt)" ], "execution_count": 390, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[-0.7479302 -1.17387185 -0.81892047 0.10395311 -0.10901772 -0.46396909\n", " 0.24593366 0.45890449 -0.03802744 -0.7479302 -0.10901772 -0.32198854\n", " 0.17494339 1.38177808 -1.0318913 -0.39297882 -0.46396909 0.17494339\n", " 1.66573918 -0.18000799 0.24593366 -0.03802744 -0.39297882 0.10395311\n", " -0.46396909 -0.81892047 2.94356415 0.03296284 -1.17387185 0.60088504\n", " -0.10901772 -1.31585241 -0.88991075 -0.03802744 0.24593366 -0.88991075\n", " -0.7479302 -0.60594965 1.3107878 0.88484615 -1.31585241 1.16880725\n", " 2.09168084 -0.96090103 -0.39297882 1.3107878 0.88484615 0.45890449\n", " -0.39297882 -0.81892047 -0.67693992 0.38791422 0.81385587 0.17494339\n", " -0.18000799 0.24593366 0.10395311 0.95583642 -0.81892047 0.24593366\n", " 0.81385587 -0.88991075 -0.53495937 -0.81892047 -0.7479302 2.94356415\n", " 0.38791422 -0.67693992 -0.53495937 -1.10288158 -0.60594965 -0.32198854\n", " -0.7479302 -0.60594965 -0.53495937 1.59474891 1.16880725 1.38177808\n", " -1.0318913 -1.31585241 0.38791422 -1.10288158 0.67187532 0.24593366\n", " 0.52989477 -1.24486213 0.38791422 0.52989477 -0.88991075 -0.81892047\n", " -0.53495937 -1.10288158 -0.53495937 3.72445719 0.7428656 0.38791422\n", " 1.52375863 -1.10288158 -0.60594965 -1.10288158 -0.32198854 0.03296284\n", " -0.25099827 -0.81892047 -0.7479302 -0.67693992 1.66573918 -0.81892047\n", " -1.10288158 3.01455443 -0.25099827 1.16880725 -1.0318913 0.03296284\n", " -0.32198854 -0.53495937 1.52375863 -0.53495937 -0.03802744 -1.17387185\n", " -0.25099827 -1.31585241 0.03296284 3.72445719 -0.39297882 0.38791422\n", " 0.38791422 -0.53495937 -0.67693992 -1.17387185 -1.45783296 -0.96090103\n", " -0.46396909 -1.17387185 -0.67693992 -0.96090103 -0.7479302 -0.03802744\n", " 2.65960305 -1.10288158 -0.60594965 -1.17387185 -0.88991075 -0.32198854\n", " 1.94970029 -0.25099827 2.23366139 -0.88991075 -0.96090103 -0.39297882\n", " -0.96090103 -0.53495937 0.31692394 2.09168084 1.80771974 -1.10288158\n", " -0.60594965 -1.38684268 -0.10901772 -0.88991075 0.7428656 -0.32198854\n", " -1.0318913 1.73672946 -0.03802744 0.17494339]\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "c9b0d8bc" }, "source": [ "### Visualization (Decision Tree Regression)" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "f169e117", "outputId": "969a6dbc-8131-4a25-e2b2-c8432d544db3" }, "source": [ "plt.scatter(y_test_dt, y_pred_dt, color="blue")\n", "\n", "plt.plot(\n", " [y_test_dt.min(), y_test_dt.max()],\n", " [y_test_dt.min(), y_test_dt.max()], color='red'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Decision Tree Regression)")\n", "\n", "plt.show()" ], "execution_count": 391, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "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IdkPJ0e1bduWTp06MXXqVBo1apRkummFChWoW7cuVatWJSQkhB07drBixQr69evn9DUdER4ezpgxYxgxYgRHjhyhRYsW5M+fn8OHD/P555/z3HPPMXToUHLmzMmYMWPo3bs39evXp23bthw+fJg5c+Y4VK/y4YcfUqtWLapUqcJzzz1HmTJlOHLkCN988038h0DVqlUBeOWVV2jXrh05c+bkqaeeyrQYAZo3b86CBQv4+++/k70DsGLFCvLly0dsbGx8R+FNmzZRqVIlPv300/jj/Pz8mDlzJo0bN+a+++6jW7dulChRghMnTrBmzRqCgoL4+uuvAXjrrbf44YcfqFOnTvw05lOnTvHpp5+ycePGZKcm//zzz/Tr14/WrVtz9913c+vWLRYsWIC/v3+qtWfDhw9nyZIlNG7cmAEDBhASEsK8efM4fPgwn332WaZ3H07s2WefZfny5fTp04c1a9bw6KOPYrVa2bdvH8uXL4/v6+Loe8IZw4YNo3Xr1sydO5c+ffowZcoUatWqRcWKFenVqxd33XUXZ86cYcuWLfz777/s3bsXgJdeeomFCxfy2GOP0b9///gp3SVLluTixYsODekMGzaMr776iqZNm8ZPjb569Sq//fYbK1as4MiRIxQqVIiePXty8eJF6tevT2hoKEePHmXy5MlUrlw5/g6LM79TKlWqRJcuXZgxYwaXLl2iTp06bNu2jXnz5tGiRYv4CR3pdfbsWX799Vf69u3r1ON9VmZOtRL3euqpp4xcuXKl2kW0a9euRs6cOY3z588bhmFOj+zXr59RokQJIyAgwAgNDTW6dOkS/33DMIwvv/zSqFChgpEjR44k04rff/99o0SJEkZgYKDx6KOPGjt27EgypTsuLs546623jFKlShmBgYHGgw8+aKxcudLo0qWLUapUKbv4SEdH4aioKCN37twGYCxcuDDJ98eMGWNUr17dKFCggJE7d27j3nvvNcaOHWvExsamet6UOgonltaU5M8++8yoVauWkTdvXiNv3rzGvffea/Tt29fYv3+/3XFTp041ypQpYwQGBhrVqlUz1q9fn+Q1TG5Kt2EYxu+//248/fTTRoECBYxcuXIZ99xzj/Haa6/ZHTN69GijRIkShp+fX5JpsK6MMSUxMTFGoUKFjNGjRyf7+tm+cuXKZYSGhhpNmzY1Zs+ebTfdN6Hdu3cb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pKfDEREvpqRGRDwmOjqaZcuW8fzzz9OkSRPmzp1r9/2vv/6ahx56iFy5clGoUCGefvppAOrWrcvRo0cZPHgwFosFi8UCwBtvvEHlypXtzjFx4kRKly4dv719+3Yee+wxChUqRHBwMHXq1GHXrl3ufJoikkmU1IiIxyxfvpx7772Xe+65h06dOjF79mxsy9F98803PP300zz55JPs3r2b1atXU716dQAiIyMJDQ3lzTff5NSpU5w6dcrha165coUuXbqwceNGtm7dSrly5XjyySe5cuWKW56jiGSeHJ4OQESyr1mzZtGpUycAnnjiCS5fvsy6deuoW7cuY8eOpV27dowaNSr++EqVKgEQEhKCv78/+fPnp1ixYum6Zv369e22Z8yYQYECBVi3bh1NmzbN4DMSEU/SnRoR8Yj9+/ezbds22rdvD0COHDlo27Yts2bNAmDPnj00aNDA5dc9c+YMvXr1oly5cgQHBxMUFER0dDTHjh1z+bVEJHPpTo2IeMSsWbO4desWxYsXj99nGAaBgYF89NFH5M6dO93n9PPzix++srl586bddpcuXbhw4QKTJk2iVKlSBAYGUqNGDWJjY517IiKSZehOjYhkulu3bjF//nzef/999uzZE/+1d+9eihcvzpIlS3jggQdYvXp1iucICAjAarXa7StcuDCnT5+2S2z27Nljd8ymTZsYMGAATz75JPfddx+BgYGcP3/epc9PRDxDd2pEJNOtXLmS//77jx49ehAcHGz3vWeeeYZZs2Yxfvx4GjRoQHh4OO3atePWrVt8++23vPzyy4DZp2b9+vW0a9eOwMBAChUqRN26dTl37hzvvvsurVq14rvvvmPVqlUEBQXFn79cuXIsWLCAatWqERUVxbBhw5y6KyQiWY/u1IhIpps1axYNGzZMktCAmdTs2LGDkJAQPv30U7766isqV65M/fr12bZtW/xxb775JkeOHCE8PJzChQsDUL58eaZOncqUKVOoVKkS27ZtY+jQoUmu/d9//1GlShWeffZZBgwYQJEiRdz7hEUkU1iMxAPQIiIiIl5Id2pERETEJyipEREREZ+gpEZERER8gpIaERER8QlKakRERMQnKKkRERERn6CkRkRERHyCkhoRERHxCUpqRERExCcoqRERERGfoKRGREREfIKSGhEREfEJ/we5hMisAz3DEQAAAABJRU5ErkJggg==\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "973887aa" }, "source": [ "## Random Forest Regression" ] }, { "cell_type": "code", "metadata": { "id": "20f5577b" }, "source": [ "from sklearn.ensemble import RandomForestRegressor\n", "from sklearn.model_selection import train_test_split\n", "from sklearn.preprocessing import StandardScaler\n", "\n", "# Scale features and target specifically for Random Forest Regression\n", "X_scaled_rf = StandardScaler().fit_transform(X)\n", "y_scaled_rf = StandardScaler().fit_transform(y.values.reshape(-1,1))\n" ], "execution_count": 392, "outputs": [] }, { "cell_type": "code", "metadata": { "id": "962fcbc3" }, "source": [ "# Splitting the dataset into the Training set and Test set for Random Forest Regression\n", "X_train_rf, X_test_rf, y_train_rf, y_test_rf = train_test_split(X_scaled_rf, y_scaled_rf, test_size = 0.2, random_state = 42)" ], "execution_count": 393, "outputs": [] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 80 }, "id": "6f50b722", "outputId": "9a2b7178-9761-4f18-e292-095d83e86064" }, "source": [ "# Training the Random Forest Regression model on the Training set\n", "regressor_rf = RandomForestRegressor(n_estimators = 100, random_state = 42) # n_estimators can be tuned\n", "regressor_rf.fit(X_train_rf, y_train_rf.ravel()) # .ravel() to convert y to 1D array" ], "execution_count": 394, "outputs": [ { "output_type": "execute_result", "data": { "text/plain": [ "RandomForestRegressor(random_state=42)" ], "text/html": [ "<style>#sk-container-id-40 {\n", " / Definition of color scheme common for light and dark mode /\n", " --sklearn-color-text: #000;\n", " --sklearn-color-text-muted: #666;\n", " --sklearn-color-line: gray;\n", " / Definition of color scheme for unfitted estimators /\n", " --sklearn-color-unfitted-level-0: #fff5e6;\n", " --sklearn-color-unfitted-level-1: #f6e4d2;\n", " --sklearn-color-unfitted-level-2: #ffe0b3;\n", " --sklearn-color-unfitted-level-3: chocolate;\n", " / Definition of color scheme for fitted estimators /\n", " --sklearn-color-fitted-level-0: #f0f8ff;\n", " --sklearn-color-fitted-level-1: #d4ebff;\n", " --sklearn-color-fitted-level-2: #b3dbfd;\n", " --sklearn-color-fitted-level-3: cornflowerblue;\n", "\n", " / Specific color for light theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n", " --sklearn-color-icon: #696969;\n", "\n", " @media (prefers-color-scheme: dark) {\n", " / Redefinition of color scheme for dark theme /\n", " --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n", " --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n", " --sklearn-color-icon: #878787;\n", " }\n", "}\n", "\n", "#sk-container-id-40 {\n", " color: var(--sklearn-color-text);\n", "}\n", "\n", "#sk-container-id-40 pre {\n", " padding: 0;\n", "}\n", "\n", "#sk-container-id-40 input.sk-hidden--visually {\n", " border: 0;\n", " clip: rect(1px 1px 1px 1px);\n", " clip: rect(1px, 1px, 1px, 1px);\n", " height: 1px;\n", " margin: -1px;\n", " overflow: hidden;\n", " padding: 0;\n", " position: absolute;\n", " width: 1px;\n", "}\n", "\n", "#sk-container-id-40 div.sk-dashed-wrapped {\n", " border: 1px dashed var(--sklearn-color-line);\n", " margin: 0 0.4em 0.5em 0.4em;\n", " box-sizing: border-box;\n", " padding-bottom: 0.4em;\n", " background-color: var(--sklearn-color-background);\n", "}\n", "\n", "#sk-container-id-40 div.sk-container {\n", " / jupyter's
normalize.less sets [hidden] { display: none; }\n",
" but bootstrap.min.css set [hidden] { display: none !important; }\n",
" so we also need the !important here to be able to override the\n",
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
" See: scikit-learn/scikit-learn#21755 /\n",
" display: inline-block !important;\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-text-repr-fallback {\n",
" display: none;\n",
"}\n",
"\n",
"div.sk-parallel-item,\n",
"div.sk-serial,\n",
"div.sk-item {\n",
" / draw centered vertical line to link estimators /\n",
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
" background-size: 2px 100%;\n",
" background-repeat: no-repeat;\n",
" background-position: center center;\n",
"}\n",
"\n",
"/ Parallel-specific style estimator block /\n",
"\n",
"#sk-container-id-40 div.sk-parallel-item::after {\n",
" content: "";\n",
" width: 100%;\n",
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
" flex-grow: 1;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-parallel {\n",
" display: flex;\n",
" align-items: stretch;\n",
" justify-content: center;\n",
" background-color: var(--sklearn-color-background);\n",
" position: relative;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-parallel-item {\n",
" display: flex;\n",
" flex-direction: column;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-parallel-item:first-child::after {\n",
" align-self: flex-end;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-parallel-item:last-child::after {\n",
" align-self: flex-start;\n",
" width: 50%;\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-parallel-item:only-child::after {\n",
" width: 0;\n",
"}\n",
"\n",
"/ Serial-specific style estimator block /\n",
"\n",
"#sk-container-id-40 div.sk-serial {\n",
" display: flex;\n",
" flex-direction: column;\n",
" align-items: center;\n",
" background-color: var(--sklearn-color-background);\n",
" padding-right: 1em;\n",
" padding-left: 1em;\n",
"}\n",
"\n",
"\n",
"/ Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
"clickable and can be expanded/collapsed.\n",
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
"- Estimators will overwrite some part of the style using the sk-estimator class\n",
"/\n",
"\n",
"/ Pipeline and ColumnTransformer style (default) /\n",
"\n",
"#sk-container-id-40 div.sk-toggleable {\n",
" / Default theme specific background. It is overwritten whether we have a\n",
" specific estimator or a Pipeline/ColumnTransformer /\n",
" background-color: var(--sklearn-color-background);\n",
"}\n",
"\n",
"/ Toggleable label /\n",
"#sk-container-id-40 label.sk-toggleable__label {\n",
" cursor: pointer;\n",
" display: flex;\n",
" width: 100%;\n",
" margin-bottom: 0;\n",
" padding: 0.5em;\n",
" box-sizing: border-box;\n",
" text-align: center;\n",
" align-items: start;\n",
" justify-content: space-between;\n",
" gap: 0.5em;\n",
"}\n",
"\n",
"#sk-container-id-40 label.sk-toggleable__label .caption {\n",
" font-size: 0.6rem;\n",
" font-weight: lighter;\n",
" color: var(--sklearn-color-text-muted);\n",
"}\n",
"\n",
"#sk-container-id-40 label.sk-toggleable__label-arrow:before {\n",
" / Arrow on the left of the label /\n",
" content: "▸";\n",
" float: left;\n",
" margin-right: 0.25em;\n",
" color: var(--sklearn-color-icon);\n",
"}\n",
"\n",
"#sk-container-id-40 label.sk-toggleable__label-arrow:hover:before {\n",
" color: var(--sklearn-color-text);\n",
"}\n",
"\n",
"/ Toggleable content - dropdown /\n",
"\n",
"#sk-container-id-40 div.sk-toggleable__content {\n",
" max-height: 0;\n",
" max-width: 0;\n",
" overflow: hidden;\n",
" text-align: left;\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-toggleable__content.fitted {\n",
" / fitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-toggleable__content pre {\n",
" margin: 0.2em;\n",
" border-radius: 0.25em;\n",
" color: var(--sklearn-color-text);\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-40 div.sk-toggleable__content.fitted pre {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-fitted-level-0);\n",
"}\n",
"\n",
"#sk-container-id-40 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
" / Expand drop-down /\n",
" max-height: 200px;\n",
" max-width: 100%;\n",
" overflow: auto;\n",
"}\n",
"\n",
"#sk-container-id-40 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
" content: "▾";\n",
"}\n",
"\n",
"/ Pipeline/ColumnTransformer-specific style /\n",
"\n",
"#sk-container-id-40 div.sk-label input.sk-toggleable__control:checked<a> HTML tag /\n",
"\n",
"#sk-container-id-40 a.estimator_doc_link {\n",
" float: right;\n",
" font-size: 1rem;\n",
" line-height: 1em;\n",
" font-family: monospace;\n",
" background-color: var(--sklearn-color-background);\n",
" border-radius: 1rem;\n",
" height: 1rem;\n",
" width: 1rem;\n",
" text-decoration: none;\n",
" / unfitted /\n",
" color: var(--sklearn-color-unfitted-level-1);\n",
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
"}\n",
"\n",
"#sk-container-id-40 a.estimator_doc_link.fitted {\n",
" / fitted /\n",
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
" color: var(--sklearn-color-fitted-level-1);\n",
"}\n",
"\n",
"/ On hover /\n",
"#sk-container-id-40 a.estimator_doc_link:hover {\n",
" / unfitted /\n",
" background-color: var(--sklearn-color-unfitted-level-3);\n",
" color: var(--sklearn-color-background);\n",
" text-decoration: none;\n",
"}\n",
"\n",
"#sk-container-id-40 a.estimator_doc_link.fitted:hover {\n",
" / fitted */\n",
" background-color: var(--sklearn-color-fitted-level-3);\n",
"}\n",
"</style><div id="sk-container-id-40" class="sk-top-container"><div class="sk-text-repr-fallback">RandomForestRegressor(random_state=42)In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook.
On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.<div class="sk-container" hidden><div class="sk-item"><div class="sk-estimator fitted sk-toggleable"><input class="sk-toggleable__control sk-hidden--visually" id="sk-estimator-id-40" type="checkbox" checked><label for="sk-estimator-id-40" class="sk-toggleable__label fitted sk-toggleable__label-arrow">
RandomForestRegressor(random_state=42)" ] }, "metadata": {}, "execution_count": 394 } ] }, { "cell_type": "markdown", "metadata": { "id": "46eb4574" }, "source": [ "### Random Forest Regression Prediction" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/" }, "id": "eb529177", "outputId": "639126f3-7a8d-489d-b96c-9b0b2b54bffb" }, "source": [ "# Predicting the Test set results for Random Forest Regression\n", "y_pred_rf = regressor_rf.predict(X_test_rf)\n", "print(y_pred_rf)" ], "execution_count": 395, "outputs": [ { "output_type": "stream", "name": "stdout", "text": [ "[-0.73302224 -1.18736001 -0.86009483 -0.10333849 0.00385682 -0.57542383\n", " 0.40708159 0.28568822 0.04432128 -0.61446848 -0.09907908 -0.27442506\n", " 0.29846647 1.37964837 -0.84447697 -0.37523125 -0.59175159 -0.0280888\n", " 1.55286464 -0.14096334 0.42340935 -0.11256723 -0.12463558 -0.13528412\n", " -0.52289102 -0.81608086 2.76892807 0.10253331 -1.31869202 0.58810679\n", " -0.16651984 -1.2626097 -0.92611579 -0.08985034 0.23244551 -0.9545119\n", " -0.62795663 -0.57329412 1.36687012 0.64844853 -1.3137227 1.3611909\n", " 2.40119844 -0.88778104 -0.37665106 1.37893847 0.80888655 0.48801051\n", " -0.362453 -0.83027892 -0.66771119 0.36732704 0.58029786 -0.03873734\n", " -0.40504717 0.28639812 0.13660864 1.04457427 -0.9282455 0.42127965\n", " 0.60017514 -0.9552218 -0.3376064 -0.91759696 -0.74935 2.7497607\n", " 0.32047345 -0.73018263 -0.34399553 -1.02195266 -0.57329412 -0.13315441\n", " -0.75644903 -0.45332055 -0.5179217 1.75944635 1.42792176 1.22346976\n", " -0.7997531 -1.29739493 0.31905365 -1.04750916 0.7428656 0.36306762\n", " 0.64560892 -1.28248698 0.40069247 0.31053482 -0.86364435 -0.800463\n", " -0.24744875 -1.09649245 -0.48242657 3.37447513 0.91537197 0.37939538\n", " 1.69910461 -0.89771968 -0.44977104 -0.9786486 -0.35393417 0.18204242\n", " -0.32979747 -0.85370571 -0.70320632 -0.70107662 2.15415228 -1.04041014\n", " -1.02337247 2.69154867 -0.5179217 1.45489806 -1.01556354 -0.09836917\n", " -0.29856175 -0.40504717 1.43715049 -0.48029686 -0.08559092 -1.14689555\n", " -0.28294389 -1.22285514 0.11602146 3.68896205 -0.47603744 0.38649441\n", " 0.34177054 -0.5179217 -0.78413524 -1.21504621 -1.35986638 -1.09791226\n", " -0.50230384 -1.15541438 -0.74296088 -1.00349519 -1.02053286 0.06277875\n", " 2.18964742 -0.97296937 -0.62795663 -1.12062915 -0.8260195 -0.34470543\n", " 2.34227651 -0.19562585 2.31742992 -0.93321482 -0.94315346 -0.40007785\n", " -0.88423153 -0.22118235 0.19340086 2.32168933 1.67425802 -1.0837142\n", " -0.56122577 -1.34921784 -0.08559092 -0.92540589 0.57461864 -0.47603744\n", " -0.96800005 1.33776411 -0.07778199 0.18701174]\n" ] } ] }, { "cell_type": "markdown", "metadata": { "id": "deac6bad" }, "source": [ "### Visualization (Random Forest Regression)" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 472 }, "id": "87e5e6f9", "outputId": "9230551b-d4fb-4ccb-e98e-828b5dd9dd16" }, "source": [ "plt.scatter(y_test_rf, y_pred_rf, color="brown")\n", "\n", "plt.plot(\n", " [y_test_rf.min(), y_test_rf.max()],\n", " [y_test_rf.min(), y_test_rf.max()], color='green'\n", ")\n", "\n", "plt.xlabel("Actual")\n", "plt.ylabel("Predicted")\n", "plt.title("Actual vs Predicted (Random Forest Regression)")\n", "\n", "plt.show()" ], "execution_count": 396, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ "<Figure size 640x480 with 1 Axes>" ], "image/png": "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\n" }, "metadata": {} } ] }, { "cell_type": "markdown", "metadata": { "id": "0e14e93f" }, "source": [ "## Model Performance Comparison" ] }, { "cell_type": "code", "metadata": { "colab": { "base_uri": "https://localhost:8080/", "height": 206 }, "id": "52a650f1", "outputId": "d5e73c29-085e-4d34-b77d-7951e6071967" }, "source": [ "import pandas as pd\n", "\n", "# Linear Regression Metrics\n", "r2_linear = r2_score(y_test_linear, y_pred_linear)\n", "mae_linear = mean_absolute_error(y_test_linear, y_pred_linear)\n", "mse_linear = mean_squared_error(y_test_linear, y_pred_linear)\n", "\n", "# Polynomial Regression Metrics\n", "r2_poly = r2_score(y_test_poly, y_pred_poly)\n", "mae_poly = mean_absolute_error(y_test_poly, y_pred_poly)\n", "mse_poly = mean_squared_error(y_test_poly, y_pred_poly)\n", "\n", "# SVR Metrics\n", "r2_svr = r2_score(y_test_svr, y_pred_svr)\n", "mae_svr = mean_absolute_error(y_test_svr, y_pred_svr)\n", "mse_svr = mean_squared_error(y_test_svr, y_pred_svr)\n", "\n", "# Decision Tree Regression Metrics\n", "r2_dt = r2_score(y_test_dt, y_pred_dt)\n", "mae_dt = mean_absolute_error(y_test_dt, y_pred_dt)\n", "mse_dt = mean_squared_error(y_test_dt, y_pred_dt)\n", "\n", "# Random Forest Regression Metrics\n", "r2_rf = r2_score(y_test_rf, y_pred_rf)\n", "mae_rf = mean_absolute_error(y_test_rf, y_pred_rf)\n", "mse_rf = mean_squared_error(y_test_rf, y_pred_rf)\n", "\n", "# Create a dictionary to store the metrics\n", "metrics_data = {\n", " 'Model': ['Linear Regression', 'Polynomial Regression', 'SVR', 'Decision Tree Regression', 'Random Forest Regression'],\n", " 'R-squared': [r2_linear, r2_poly, r2_svr, r2_dt, r2_rf],\n", " 'Mean Absolute Error': [mae_linear, mae_poly, mae_svr, mae_dt, mae_rf],\n", " 'Mean Squared Error': [mse_linear, mse_poly, mse_svr, mse_dt, mse_rf]\n", "}\n", "\n", "# Create a DataFrame\n", "performance_df = pd.DataFrame(metrics_data)\n", "\n", "# Display the DataFrame\n", "display(performance_df)" ], "execution_count": 397, "outputs": [ { "output_type": "display_data", "data": { "text/plain": [ " Model R-squared Mean Absolute Error \\n", "0 Linear Regression 0.972173 0.126320 \n", "1 Polynomial Regression 0.980567 0.098290 \n", "2 SVR 0.970990 0.113747 \n", "3 Decision Tree Regression 0.942527 0.166784 \n", "4 Random Forest Regression 0.969108 0.128035 \n", "\n", " Mean Squared Error \n", "0 0.029192 \n", "1 0.020386 \n", "2 0.030434 \n", "3 0.060293 \n", "4 0.032408 " ], "text/html": [ "\n", " <div id="df-0d4da613-f877-40a4-8593-16a935478e88" class="colab-df-container">\n", "