Skip to content

Instantly share code, notes, and snippets.

@udomsak
Last active October 21, 2018 05:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save udomsak/7b212dd7b1af03b571075e70e45447db to your computer and use it in GitHub Desktop.
Save udomsak/7b212dd7b1af03b571075e70e45447db to your computer and use it in GitHub Desktop.
บันทึก ไฟล์ examsample LinearRegression ระหว่างสอน วันที่ 20-10-2018
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Tutorial \n",
"## Function and calling formula \n"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"scrolled": true
},
"outputs": [],
"source": [
"import numpy as np\n",
"import pandas as pd\n",
"import matplotlib.pyplot as plt\n",
"\n",
"%matplotlib inline\n",
"\n",
"def FindR(X,Y):\n",
" fraction = [(X-X.mean())*(Y-Y.mean())].sum()\n",
" denorminator = np.sqrt([X-X.mean()**2].sum() * [(Y-Y.mean())**2].sum())\n",
" r = fraction/denominator\n",
" return r\n",
"\n",
"def FindAB(X, Y, X2, XY):\n",
" denorminator = X2.mean()-X.mean()**2\n",
" a = (XY.mean()- X.mean() * Y.mean()) / denorminator\n",
" b = (X2.mean()* Y.mean()- X.mean() * XY.mean()) / denorminator\n",
" return a,b\n",
"\n",
"def FindYhat(a, X, b):\n",
" Yhat = a*X+b\n",
" return Yhat\n",
"\n",
"def FindError(Y, Yhat):\n",
" Error = ((Y-Yhat)**2).sum()\n",
" return Error\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Example 1"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"3.527638056728636e-27\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": [
"# Print Graph ใช้วิธีดาวน์โหลด data set มาจาก internet ( วางไว้ที่ Dropbox ) แทนการอ่านจาก harddisk \n",
"LoadDataEx1 = pd.read_csv('https://dl.dropbox.com/s/7esxxfrpaetb9to/w1_ex1.csv?dl=0', sep=',', error_bad_lines=False)\n",
"DataMetrixEx1 = LoadDataEx1.values\n",
"\n",
"x = DataMetrixEx1[:, 1]\n",
"y = DataMetrixEx1[:, 2]\n",
"\n",
"a, b = FindAB(x, y, x**2, x*y)\n",
"\n",
"Yhat = FindYhat(a, x, b)\n",
"ErrorTrain = FindError(y, Yhat)\n",
"\n",
"\n",
"plt.plot(y, label='True Train Example1')\n",
"plt.plot(Yhat, label='Predict train Example1')\n",
"plt.legend()\n",
"print(ErrorTrain)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Example2"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. 1.1 1.2 1.3 1.4 1.5 1.6 1.7\n",
" 1.8 1.9 2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3. 3.1 3.2 3.3 3.4 3.5\n",
" 3.6 3.7 3.8 3.9 4. 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5. 5.1 5.2 5.3\n",
" 5.4 5.5 5.6 5.7 5.8 5.9 6. 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 7. 7.1\n",
" 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 8. 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9\n",
" 9. 9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9]\n",
"1918936.267098624\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": [
"\n",
"LoadDataEx2 = pd.read_csv('https://dl.dropbox.com/s/2fl8xlpvpspi5kz/w1_ex2.csv?dl=0', sep=',', error_bad_lines=False)\n",
"DataMetrixEx2 = LoadDataEx2.values\n",
"\n",
"# Print Graph\n",
"x = DataMetrixEx2[:, 1]\n",
"y = DataMetrixEx2[:, 2]\n",
"\n",
"print(x)\n",
"\n",
"a, b = FindAB(x, y, x**2, x*y)\n",
"\n",
"Yhat = FindYhat(a, x, b)\n",
"ErrorTrain = FindError(y, Yhat)\n",
"\n",
"\n",
"plt.plot(y, label='True Train Example2')\n",
"plt.plot(Yhat, label='Predict train Example2')\n",
"plt.legend()\n",
"print(ErrorTrain)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Graph Example - 3"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"[0. 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1. 1.1 1.2 1.3 1.4 1.5 1.6 1.7\n",
" 1.8 1.9 2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 3. 3.1 3.2 3.3 3.4 3.5\n",
" 3.6 3.7 3.8 3.9 4. 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 5. 5.1 5.2 5.3\n",
" 5.4 5.5 5.6 5.7 5.8 5.9 6. 6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 6.9 7. 7.1\n",
" 7.2 7.3 7.4 7.5 7.6 7.7 7.8 7.9 8. 8.1 8.2 8.3 8.4 8.5 8.6 8.7 8.8 8.9\n",
" 9. 9.1 9.2 9.3 9.4 9.5 9.6 9.7 9.8 9.9]\n",
"43.94968675537547\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": [
"LoadDataEx3 = pd.read_csv('https://dl.dropbox.com/s/578inszfcu7agrb/w1_ex3.csv?dl=0', sep=',', error_bad_lines=False)\n",
"DataMetrixEx3 = LoadDataEx3.values \n",
"# Print Graph\n",
"x = DataMetrixEx3[:, 1]\n",
"y = DataMetrixEx3[:, 2]\n",
"\n",
"print(x)\n",
"\n",
"a, b = FindAB(x, y, x**2, x*y)\n",
"\n",
"Yhat = FindYhat(a, x, b)\n",
"ErrorTrain = FindError(y, Yhat)\n",
"\n",
"\n",
"plt.plot(y, label='True Train Example3')\n",
"plt.plot(Yhat, label='Predict train Example3')\n",
"plt.legend()\n",
"print(ErrorTrain)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"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.0"
},
"widgets": {
"application/vnd.jupyter.widget-state+json": {
"state": {},
"version_major": 2,
"version_minor": 0
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment