Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
lazy-programmer-courses
/
linear-regression
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
93ead254
authored
Jul 30, 2018
by
Paktalin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
initial commit: class 7
parents
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
155 additions
and
0 deletions
linear_regression_1d.ipynb
linear_regression_1d.ipynb
0 → 100644
View file @
93ead254
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"import numpy as np\n",
"import matplotlib.pyplot as plt\n",
"import pandas as pd"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# load data\n",
"X = []\n",
"Y = []"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {},
"outputs": [],
"source": [
"for line in open('../csv_files/data_1d.csv'):\n",
" x, y = line.split(',')\n",
" X.append(float(x))\n",
" Y.append(float(y))"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {},
"outputs": [],
"source": [
"# turn X and Y into numpy arrays\n",
"X = np.array(X)\n",
"Y = np.array(Y)"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot the data\n",
"plt.scatter(X, Y, edgecolors='k')\n",
"plt.xlabel('x values')\n",
"plt.ylabel('y values')\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 23,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"denominator = 71642.992721\n",
"a = 1.972612\n",
"b = 2.864424\n"
]
}
],
"source": [
"# calculate a and b\n",
"denominator = X.dot(X) - X.mean()*X.sum()\n",
"\n",
"a = ( X.dot(Y) - Y.mean() * X.sum() ) / denominator\n",
"b = ( Y.mean() * X.dot(X) - X.mean() * X.dot(Y) ) / denominator\n",
"print('denominator = %f' % denominator)\n",
"print('a = %f' % a)\n",
"print('b = %f' % b)"
]
},
{
"cell_type": "code",
"execution_count": 25,
"metadata": {},
"outputs": [],
"source": [
"# calculate predicted Y\n",
"Yhat = a*X + b"
]
},
{
"cell_type": "code",
"execution_count": 28,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<Figure size 432x288 with 1 Axes>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot predicted line\n",
"plt.scatter(X, Y, edgecolors='k')\n",
"plt.xlabel('x values')\n",
"plt.ylabel('y values')\n",
"plt.plot(X, Yhat, color='red')\n",
"plt.show()"
]
}
],
"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.5.5"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment