Created
October 16, 2025 11:42
-
-
Save mattbullen/5a29124e29c28fcfbd3850f670c65ae7 to your computer and use it in GitHub Desktop.
Unit03 Ex2 linear_regression.ipynb
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": { | |
| "id": "view-in-github", | |
| "colab_type": "text" | |
| }, | |
| "source": [ | |
| "<a href=\"https://colab.research.google.com/gist/mattbullen/5a29124e29c28fcfbd3850f670c65ae7/unit03-ex2-linear_regression.ipynb\" target=\"_parent\"><img src=\"https://colab.research.google.com/assets/colab-badge.svg\" alt=\"Open In Colab\"/></a>" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": { | |
| "id": "wglk35RZjXoq", | |
| "outputId": "b7d8b2e1-e64b-4bdf-d168-c2c165746949" | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "Pearsons correlation: -0.759\n" | |
| ] | |
| }, | |
| { | |
| "data": { | |
| "image/png": "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\n", | |
| "text/plain": [ | |
| "<Figure size 432x288 with 1 Axes>" | |
| ] | |
| }, | |
| "metadata": { | |
| "needs_background": "light" | |
| }, | |
| "output_type": "display_data" | |
| } | |
| ], | |
| "source": [ | |
| "import matplotlib.pyplot as plt\n", | |
| "from scipy import stats\n", | |
| "\n", | |
| "#Create the arrays that represent the values of the x and y axis\n", | |
| "x = [5,7,8,7,2,17,2,9,4,11,12,9,6]\n", | |
| "y = [99,86,87,88,111,86,103,87,94,78,77,85,86]\n", | |
| "\n", | |
| "#Execute a method that returns some important key values of Linear Regression\n", | |
| "slope, intercept, r, p, std_err = stat.linregress(x, y)\n", | |
| "\n", | |
| "# measure the correlation\n", | |
| "corr, _ = stat.pearsonr(x, y)\n", | |
| "print('Pearsons correlation: %.3f' % corr)\n", | |
| "\n", | |
| "#Create a function that uses the slope and intercept values to return a new value.\n", | |
| "#This new value represents where on the y-axis the corresponding x value will be placed\n", | |
| "def myfunc(x):\n", | |
| " return slope * x + intercept\n", | |
| "\n", | |
| "#Run each value of the x array through the function. This will result in a new array with new values for the y-axis\n", | |
| "mymodel = list(map(myfunc, x))\n", | |
| "\n", | |
| "#Draw the original scatter plot & the line of linear regression\n", | |
| "plt.scatter(x, y)\n", | |
| "plt.plot(x, mymodel)\n", | |
| "plt.show()\n" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": { | |
| "id": "sBGaxAlgjXos" | |
| }, | |
| "source": [ | |
| "## Predict Future Values" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": { | |
| "id": "aNeGy6pBjXos", | |
| "outputId": "7832a556-aeed-4e2a-8b11-f12e1593cb90" | |
| }, | |
| "outputs": [ | |
| { | |
| "name": "stdout", | |
| "output_type": "stream", | |
| "text": [ | |
| "85.59308314937454\n" | |
| ] | |
| } | |
| ], | |
| "source": [ | |
| "from scipy import stats\n", | |
| "\n", | |
| "x = [5,7,8,7,2,17,2,9,4,11,12,9,6]\n", | |
| "y = [99,86,87,88,111,86,103,87,94,78,77,85,86]\n", | |
| "\n", | |
| "slope, intercept, r, p, std_err = stats.linregress(x, y)\n", | |
| "\n", | |
| "def myfunc(x):\n", | |
| " return intercept + slope * x\n", | |
| "\n", | |
| "speed = myfunc(10)\n", | |
| "\n", | |
| "print(speed)" | |
| ] | |
| }, | |
| { | |
| "cell_type": "markdown", | |
| "metadata": { | |
| "id": "sMezXAcFjXot" | |
| }, | |
| "source": [ | |
| "If x=10 then predicted y is 85.59" | |
| ] | |
| }, | |
| { | |
| "cell_type": "code", | |
| "execution_count": null, | |
| "metadata": { | |
| "id": "0NIikYDRjXot" | |
| }, | |
| "outputs": [], | |
| "source": [] | |
| } | |
| ], | |
| "metadata": { | |
| "kernelspec": { | |
| "display_name": "Python 3", | |
| "language": "python", | |
| "name": "python3" | |
| }, | |
| "language_info": { | |
| "codemirror_mode": { | |
| "name": "ipython", | |
| "version": 3 | |
| }, | |
| "file_extension": ".py", | |
| "mimetype": "text/x-python", | |
| "name": "python", | |
| "nbconvert_exporter": "python", | |
| "pygments_lexer": "ipython3", | |
| "version": "3.7.6" | |
| }, | |
| "colab": { | |
| "provenance": [], | |
| "include_colab_link": true | |
| } | |
| }, | |
| "nbformat": 4, | |
| "nbformat_minor": 0 | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment