Created
December 5, 2019 18:47
-
-
Save kshirsagarsiddharth/acda5b589767eb099dc9c14552624bcc to your computer and use it in GitHub Desktop.
Created on Cognitive Class Labs
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| { | |
| "cells": [ | |
| { | |
| "cell_type": "markdown", | |
| "metadata": {}, | |
| "source": [ | |
| "Correlation(otherwise known as \"R\") is a number between 1 and -1\n", | |
| "+1 implies that an increase in x results in some increase in y\n", | |
| "-1 implies that an increase in x results in some decrease in y\n", | |
| "0 implies that there is no relationship between x and y.\n", | |
| "like correlation R^2 tells us how related two things are. We use R^2 because it is easy to interpret.\n", | |
| "R^2 is the percentage of variation (it varies from 0 to 1) explained by the relationship between two variables.\n", | |
| "\n", | |
| "The coefficient of determination R^2 is used to analyze how the difference in one variable can be explained by the difference in a second variable.\n", | |
| "for example, when a woman gets pregnant has a direct relation with when they give birth.\n", | |
| "More specifically, R-squared gives you percent of the variation in y explained by x variables. The range is between 0 and 1(i.e 0% to 100% of the variation in y can be explained by x-variables).\n", | |
| "\n", | |
| "Meaning of coefficient of determination\n", | |
| "It can be thought of as a percentage. The higher the coefficient the higher the percentage of points the line passes through when the data points and the line is plotted. If the value is 80% then 80 % of the points should fall within the regression line.\n", | |
| "\n", | |
| "usefulness of R^2\n", | |
| "The usefulness of R^2 is its ability to find the likelihood of future events falling within the predicted outcome.\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 7, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "import pandas as pd\n", | |
| "import numpy as np\n", | |
| "from matplotlib import pyplot as plt\n", | |
| "import seaborn as sns\n", | |
| "from sklearn.metrics import r2_score\n", | |
| "from sklearn.linear_model import LinearRegression\n", | |
| "sns.set()" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 15, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/html": [ | |
| "<div>\n", | |
| "<style scoped>\n", | |
| " .dataframe tbody tr th:only-of-type {\n", | |
| " vertical-align: middle;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe tbody tr th {\n", | |
| " vertical-align: top;\n", | |
| " }\n", | |
| "\n", | |
| " .dataframe thead th {\n", | |
| " text-align: right;\n", | |
| " }\n", | |
| "</style>\n", | |
| "<table border=\"1\" class=\"dataframe\">\n", | |
| " <thead>\n", | |
| " <tr style=\"text-align: right;\">\n", | |
| " <th></th>\n", | |
| " <th>YearsExperience</th>\n", | |
| " <th>Salary</th>\n", | |
| " </tr>\n", | |
| " </thead>\n", | |
| " <tbody>\n", | |
| " <tr>\n", | |
| " <th>0</th>\n", | |
| " <td>1.1</td>\n", | |
| " <td>39343.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>1</th>\n", | |
| " <td>1.3</td>\n", | |
| " <td>46205.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>2</th>\n", | |
| " <td>1.5</td>\n", | |
| " <td>37731.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>3</th>\n", | |
| " <td>2.0</td>\n", | |
| " <td>43525.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>4</th>\n", | |
| " <td>2.2</td>\n", | |
| " <td>39891.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>5</th>\n", | |
| " <td>2.9</td>\n", | |
| " <td>56642.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>6</th>\n", | |
| " <td>3.0</td>\n", | |
| " <td>60150.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>7</th>\n", | |
| " <td>3.2</td>\n", | |
| " <td>54445.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>8</th>\n", | |
| " <td>3.2</td>\n", | |
| " <td>64445.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>9</th>\n", | |
| " <td>3.7</td>\n", | |
| " <td>57189.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>10</th>\n", | |
| " <td>3.9</td>\n", | |
| " <td>63218.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>11</th>\n", | |
| " <td>4.0</td>\n", | |
| " <td>55794.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>12</th>\n", | |
| " <td>4.0</td>\n", | |
| " <td>56957.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>13</th>\n", | |
| " <td>4.1</td>\n", | |
| " <td>57081.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>14</th>\n", | |
| " <td>4.5</td>\n", | |
| " <td>61111.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>15</th>\n", | |
| " <td>4.9</td>\n", | |
| " <td>67938.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>16</th>\n", | |
| " <td>5.1</td>\n", | |
| " <td>66029.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>17</th>\n", | |
| " <td>5.3</td>\n", | |
| " <td>83088.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>18</th>\n", | |
| " <td>5.9</td>\n", | |
| " <td>81363.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>19</th>\n", | |
| " <td>6.0</td>\n", | |
| " <td>93940.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>20</th>\n", | |
| " <td>6.8</td>\n", | |
| " <td>91738.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>21</th>\n", | |
| " <td>7.1</td>\n", | |
| " <td>98273.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>22</th>\n", | |
| " <td>7.9</td>\n", | |
| " <td>101302.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>23</th>\n", | |
| " <td>8.2</td>\n", | |
| " <td>113812.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>24</th>\n", | |
| " <td>8.7</td>\n", | |
| " <td>109431.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>25</th>\n", | |
| " <td>9.0</td>\n", | |
| " <td>105582.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>26</th>\n", | |
| " <td>9.5</td>\n", | |
| " <td>116969.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>27</th>\n", | |
| " <td>9.6</td>\n", | |
| " <td>112635.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>28</th>\n", | |
| " <td>10.3</td>\n", | |
| " <td>122391.0</td>\n", | |
| " </tr>\n", | |
| " <tr>\n", | |
| " <th>29</th>\n", | |
| " <td>10.5</td>\n", | |
| " <td>121872.0</td>\n", | |
| " </tr>\n", | |
| " </tbody>\n", | |
| "</table>\n", | |
| "</div>" | |
| ], | |
| "text/plain": [ | |
| " YearsExperience Salary\n", | |
| "0 1.1 39343.0\n", | |
| "1 1.3 46205.0\n", | |
| "2 1.5 37731.0\n", | |
| "3 2.0 43525.0\n", | |
| "4 2.2 39891.0\n", | |
| "5 2.9 56642.0\n", | |
| "6 3.0 60150.0\n", | |
| "7 3.2 54445.0\n", | |
| "8 3.2 64445.0\n", | |
| "9 3.7 57189.0\n", | |
| "10 3.9 63218.0\n", | |
| "11 4.0 55794.0\n", | |
| "12 4.0 56957.0\n", | |
| "13 4.1 57081.0\n", | |
| "14 4.5 61111.0\n", | |
| "15 4.9 67938.0\n", | |
| "16 5.1 66029.0\n", | |
| "17 5.3 83088.0\n", | |
| "18 5.9 81363.0\n", | |
| "19 6.0 93940.0\n", | |
| "20 6.8 91738.0\n", | |
| "21 7.1 98273.0\n", | |
| "22 7.9 101302.0\n", | |
| "23 8.2 113812.0\n", | |
| "24 8.7 109431.0\n", | |
| "25 9.0 105582.0\n", | |
| "26 9.5 116969.0\n", | |
| "27 9.6 112635.0\n", | |
| "28 10.3 122391.0\n", | |
| "29 10.5 121872.0" | |
| ] | |
| }, | |
| "execution_count": 15, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "df = pd.read_csv(\"exp_sal.csv\")\n", | |
| "df" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 9, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "<matplotlib.collections.PathCollection at 0x7ff91076ab38>" | |
| ] | |
| }, | |
| "execution_count": 9, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "plt.scatter(df['YearsExperience'],df['Salary'])" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 21, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "X = np.array(df['YearsExperience']).reshape(-1,1)\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 22, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "y = df['Salary']" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 23, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "rf = LinearRegression()\n", | |
| "rf.fit(X,y)\n", | |
| "y_pred = rf.predict(X)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 25, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "[<matplotlib.lines.Line2D at 0x7ff9075cfe48>]" | |
| ] | |
| }, | |
| "execution_count": 25, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": {}, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "plt.scatter(df['YearsExperience'],df['Salary'])\n", | |
| "plt.plot(X,y_pred,color = 'red')" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 48, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "0.9569566641435086" | |
| ] | |
| }, | |
| "execution_count": 48, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "r2_score(y,y_pred)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 27, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "0 39343.0\n", | |
| "1 46205.0\n", | |
| "2 37731.0\n", | |
| "3 43525.0\n", | |
| "4 39891.0\n", | |
| "5 56642.0\n", | |
| "6 60150.0\n", | |
| "7 54445.0\n", | |
| "8 64445.0\n", | |
| "9 57189.0\n", | |
| "10 63218.0\n", | |
| "11 55794.0\n", | |
| "12 56957.0\n", | |
| "13 57081.0\n", | |
| "14 61111.0\n", | |
| "15 67938.0\n", | |
| "16 66029.0\n", | |
| "17 83088.0\n", | |
| "18 81363.0\n", | |
| "19 93940.0\n", | |
| "20 91738.0\n", | |
| "21 98273.0\n", | |
| "22 101302.0\n", | |
| "23 113812.0\n", | |
| "24 109431.0\n", | |
| "25 105582.0\n", | |
| "26 116969.0\n", | |
| "27 112635.0\n", | |
| "28 122391.0\n", | |
| "29 121872.0\n", | |
| "Name: Salary, dtype: float64" | |
| ] | |
| }, | |
| "execution_count": 27, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| " y" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 28, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "array([ 36187.15875227, 38077.15121656, 39967.14368085, 44692.12484158,\n", | |
| " 46582.11730587, 53197.09093089, 54142.08716303, 56032.07962732,\n", | |
| " 56032.07962732, 60757.06078805, 62647.05325234, 63592.04948449,\n", | |
| " 63592.04948449, 64537.04571663, 68317.03064522, 72097.0155738 ,\n", | |
| " 73987.00803809, 75877.00050238, 81546.97789525, 82491.9741274 ,\n", | |
| " 90051.94398456, 92886.932681 , 100446.90253816, 103281.8912346 ,\n", | |
| " 108006.87239533, 110841.86109176, 115566.84225249, 116511.83848464,\n", | |
| " 123126.81210966, 125016.80457395])" | |
| ] | |
| }, | |
| "execution_count": 28, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "y_pred" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 49, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "def r2_score_from_scratch(y,y_pred):\n", | |
| " y_mean = y.mean()\n", | |
| " y_pred_mean = y_pred.mean()\n", | |
| " n = len(y)\n", | |
| " num = 0\n", | |
| " denom = 0\n", | |
| " for i in range(0,n):\n", | |
| " num = num + (((y[i]-y_mean)*(y[i]-y_pred_mean)))**2\n", | |
| " denom = denom + (((y[i]-y_mean))*((y[i]-y_pred_mean)))**2\n", | |
| " \n", | |
| " r2_coeff = num/denom\n", | |
| " return r2_coeff \n", | |
| " \n", | |
| " " | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 50, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "1.0" | |
| ] | |
| }, | |
| "execution_count": 50, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "nt = r2_score_from_scratch(y,y_pred)\n", | |
| "nt" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 51, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [ | |
| "ysml = [y.mean() for i in y]" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": 52, | |
| "metadata": {}, | |
| "outputs": [ | |
| { | |
| "data": { | |
| "text/plain": [ | |
| "[76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0,\n", | |
| " 76003.0]" | |
| ] | |
| }, | |
| "execution_count": 52, | |
| "metadata": {}, | |
| "output_type": "execute_result" | |
| } | |
| ], | |
| "source": [ | |
| "ysml" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": {}, | |
| "outputs": [], | |
| "source": [] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python", | |
| "language": "python", | |
| "name": "conda-env-python-py" | |
| }, | |
| "language_info": { | |
| "codemirror_mode": { | |
| "name": "ipython", | |
| "version": 3 | |
| }, | |
| "file_extension": ".py", | |
| "mimetype": "text/x-python", | |
| "name": "python", | |
| "nbconvert_exporter": "python", | |
| "pygments_lexer": "ipython3", | |
| "version": "3.6.7" | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 4 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment