Skip to content

Instantly share code, notes, and snippets.

@capsulecorplab
Last active December 30, 2017 17:50
Show Gist options
  • Save capsulecorplab/73b9e3056bddec0e0b207ea510b5f1df to your computer and use it in GitHub Desktop.
Save capsulecorplab/73b9e3056bddec0e0b207ea510b5f1df to your computer and use it in GitHub Desktop.
one_step_at_a_time
Display the source blob
Display the rendered blob
Raw
{
"cells": [
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [],
"source": [
"## Script overview ##\n",
"# Generate a random dataset that loosely follows a linear trendline\n",
"# Output dataset to csv file\n",
"# Read csv file as dataframe\n",
"# Perform linear regression analysis on dataset"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {},
"outputs": [],
"source": [
"# Define some trend line, in this case, y=mx+b\n",
"import numpy as np\n",
"\n",
"slope = 0.5\n",
"intercept = 20\n",
"x = np.linspace(1,100,100)\n",
"y = slope*x + intercept"
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.0 20.5\n",
"2.0 21.0\n",
"3.0 21.5\n",
"4.0 22.0\n",
"5.0 22.5\n",
"6.0 23.0\n",
"7.0 23.5\n",
"8.0 24.0\n",
"9.0 24.5\n",
"10.0 25.0\n",
"11.0 25.5\n",
"12.0 26.0\n",
"13.0 26.5\n",
"14.0 27.0\n",
"15.0 27.5\n",
"16.0 28.0\n",
"17.0 28.5\n",
"18.0 29.0\n",
"19.0 29.5\n",
"20.0 30.0\n",
"21.0 30.5\n",
"22.0 31.0\n",
"23.0 31.5\n",
"24.0 32.0\n",
"25.0 32.5\n",
"26.0 33.0\n",
"27.0 33.5\n",
"28.0 34.0\n",
"29.0 34.5\n",
"30.0 35.0\n",
"31.0 35.5\n",
"32.0 36.0\n",
"33.0 36.5\n",
"34.0 37.0\n",
"35.0 37.5\n",
"36.0 38.0\n",
"37.0 38.5\n",
"38.0 39.0\n",
"39.0 39.5\n",
"40.0 40.0\n",
"41.0 40.5\n",
"42.0 41.0\n",
"43.0 41.5\n",
"44.0 42.0\n",
"45.0 42.5\n",
"46.0 43.0\n",
"47.0 43.5\n",
"48.0 44.0\n",
"49.0 44.5\n",
"50.0 45.0\n",
"51.0 45.5\n",
"52.0 46.0\n",
"53.0 46.5\n",
"54.0 47.0\n",
"55.0 47.5\n",
"56.0 48.0\n",
"57.0 48.5\n",
"58.0 49.0\n",
"59.0 49.5\n",
"60.0 50.0\n",
"61.0 50.5\n",
"62.0 51.0\n",
"63.0 51.5\n",
"64.0 52.0\n",
"65.0 52.5\n",
"66.0 53.0\n",
"67.0 53.5\n",
"68.0 54.0\n",
"69.0 54.5\n",
"70.0 55.0\n",
"71.0 55.5\n",
"72.0 56.0\n",
"73.0 56.5\n",
"74.0 57.0\n",
"75.0 57.5\n",
"76.0 58.0\n",
"77.0 58.5\n",
"78.0 59.0\n",
"79.0 59.5\n",
"80.0 60.0\n",
"81.0 60.5\n",
"82.0 61.0\n",
"83.0 61.5\n",
"84.0 62.0\n",
"85.0 62.5\n",
"86.0 63.0\n",
"87.0 63.5\n",
"88.0 64.0\n",
"89.0 64.5\n",
"90.0 65.0\n",
"91.0 65.5\n",
"92.0 66.0\n",
"93.0 66.5\n",
"94.0 67.0\n",
"95.0 67.5\n",
"96.0 68.0\n",
"97.0 68.5\n",
"98.0 69.0\n",
"99.0 69.5\n",
"100.0 70.0\n"
]
}
],
"source": [
"# Print elements of x & y (bad way)\n",
"for i in range(0,len(y)):\n",
" print(x[i],y[i])"
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"1.0 20.5\n",
"2.0 21.0\n",
"3.0 21.5\n",
"4.0 22.0\n",
"5.0 22.5\n",
"6.0 23.0\n",
"7.0 23.5\n",
"8.0 24.0\n",
"9.0 24.5\n",
"10.0 25.0\n",
"11.0 25.5\n",
"12.0 26.0\n",
"13.0 26.5\n",
"14.0 27.0\n",
"15.0 27.5\n",
"16.0 28.0\n",
"17.0 28.5\n",
"18.0 29.0\n",
"19.0 29.5\n",
"20.0 30.0\n",
"21.0 30.5\n",
"22.0 31.0\n",
"23.0 31.5\n",
"24.0 32.0\n",
"25.0 32.5\n",
"26.0 33.0\n",
"27.0 33.5\n",
"28.0 34.0\n",
"29.0 34.5\n",
"30.0 35.0\n",
"31.0 35.5\n",
"32.0 36.0\n",
"33.0 36.5\n",
"34.0 37.0\n",
"35.0 37.5\n",
"36.0 38.0\n",
"37.0 38.5\n",
"38.0 39.0\n",
"39.0 39.5\n",
"40.0 40.0\n",
"41.0 40.5\n",
"42.0 41.0\n",
"43.0 41.5\n",
"44.0 42.0\n",
"45.0 42.5\n",
"46.0 43.0\n",
"47.0 43.5\n",
"48.0 44.0\n",
"49.0 44.5\n",
"50.0 45.0\n",
"51.0 45.5\n",
"52.0 46.0\n",
"53.0 46.5\n",
"54.0 47.0\n",
"55.0 47.5\n",
"56.0 48.0\n",
"57.0 48.5\n",
"58.0 49.0\n",
"59.0 49.5\n",
"60.0 50.0\n",
"61.0 50.5\n",
"62.0 51.0\n",
"63.0 51.5\n",
"64.0 52.0\n",
"65.0 52.5\n",
"66.0 53.0\n",
"67.0 53.5\n",
"68.0 54.0\n",
"69.0 54.5\n",
"70.0 55.0\n",
"71.0 55.5\n",
"72.0 56.0\n",
"73.0 56.5\n",
"74.0 57.0\n",
"75.0 57.5\n",
"76.0 58.0\n",
"77.0 58.5\n",
"78.0 59.0\n",
"79.0 59.5\n",
"80.0 60.0\n",
"81.0 60.5\n",
"82.0 61.0\n",
"83.0 61.5\n",
"84.0 62.0\n",
"85.0 62.5\n",
"86.0 63.0\n",
"87.0 63.5\n",
"88.0 64.0\n",
"89.0 64.5\n",
"90.0 65.0\n",
"91.0 65.5\n",
"92.0 66.0\n",
"93.0 66.5\n",
"94.0 67.0\n",
"95.0 67.5\n",
"96.0 68.0\n",
"97.0 68.5\n",
"98.0 69.0\n",
"99.0 69.5\n",
"100.0 70.0\n"
]
}
],
"source": [
"# Print elements of x & y (good way)\n",
"for i,j in zip(x,y):\n",
" print(i,j)"
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\ni4g4xP8Hx+RDvLC+f8oAAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f6d057f4320>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# plot trendline using plotting tool, matplotlib\n",
"import matplotlib.pyplot as plt\n",
"\n",
"plt.plot(x,y)\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {},
"outputs": [],
"source": [
"# Define a function that returns a new position deviated from some initial position, x,y\n",
"import random\n",
"random.seed() # initialize random number generator\n",
"\n",
"def random_walk(x,y):\n",
" # step size\n",
" s = 1\n",
" # number of steps (randomly generated)\n",
" n = random.randint(100,500)\n",
" for i in range(n):\n",
" #dx = random.choice([(0,s),(0,-s),(s,0),(-s,0)])\n",
" #dy = random.choice([(0,s),(0,-s),(s,0),(-s,0)])\n",
" dx,dy = random.choice([(0,s),(0,-s),(s,0),(-s,0)])\n",
" x += dx\n",
" y += dy\n",
" print('number of steps:',n,'x:',x,'y:',y)\n",
" return x,y"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"number of steps: 111 x: 4.0 y: 20.5\n",
"number of steps: 477 x: 22.0 y: 20.0\n",
"number of steps: 398 x: -1.0 y: 31.5\n",
"number of steps: 270 x: -5.0 y: 13.0\n",
"number of steps: 434 x: 1.0 y: 20.5\n",
"number of steps: 229 x: 13.0 y: 21.0\n",
"number of steps: 147 x: 3.0 y: 18.5\n",
"number of steps: 325 x: 19.0 y: 20.0\n",
"number of steps: 415 x: -1.0 y: 25.5\n",
"number of steps: 423 x: 25.0 y: 15.0\n",
"number of steps: 385 x: 10.0 y: 11.5\n",
"number of steps: 430 x: 17.0 y: 53.0\n",
"number of steps: 112 x: 12.0 y: 19.5\n",
"number of steps: 271 x: 17.0 y: 25.0\n",
"number of steps: 465 x: 8.0 y: 25.5\n",
"number of steps: 158 x: 7.0 y: 37.0\n",
"number of steps: 298 x: 8.0 y: 39.5\n",
"number of steps: 319 x: 24.0 y: 22.0\n",
"number of steps: 416 x: -3.0 y: 29.5\n",
"number of steps: 316 x: 27.0 y: 33.0\n",
"number of steps: 243 x: 27.0 y: 25.5\n",
"number of steps: 358 x: 13.0 y: 44.0\n",
"number of steps: 320 x: 5.0 y: 35.5\n",
"number of steps: 103 x: 22.0 y: 35.0\n",
"number of steps: 280 x: 9.0 y: 40.5\n",
"number of steps: 259 x: 43.0 y: 17.0\n",
"number of steps: 390 x: 34.0 y: 36.5\n",
"number of steps: 338 x: 37.0 y: 43.0\n",
"number of steps: 233 x: 46.0 y: 42.5\n",
"number of steps: 344 x: 35.0 y: 26.0\n",
"number of steps: 321 x: 31.0 y: 48.5\n",
"number of steps: 102 x: 45.0 y: 39.0\n",
"number of steps: 291 x: 40.0 y: 44.5\n",
"number of steps: 269 x: 32.0 y: 26.0\n",
"number of steps: 425 x: 46.0 y: 45.5\n",
"number of steps: 346 x: 28.0 y: 34.0\n",
"number of steps: 181 x: 36.0 y: 30.5\n",
"number of steps: 454 x: 17.0 y: 40.0\n",
"number of steps: 196 x: 45.0 y: 57.5\n",
"number of steps: 240 x: 51.0 y: 45.0\n",
"number of steps: 195 x: 47.0 y: 37.5\n",
"number of steps: 320 x: 53.0 y: 64.0\n",
"number of steps: 442 x: 55.0 y: 39.5\n",
"number of steps: 166 x: 40.0 y: 32.0\n",
"number of steps: 245 x: 46.0 y: 38.5\n",
"number of steps: 299 x: 42.0 y: 26.0\n",
"number of steps: 121 x: 47.0 y: 32.5\n",
"number of steps: 411 x: 71.0 y: 44.0\n",
"number of steps: 271 x: 46.0 y: 58.5\n",
"number of steps: 193 x: 67.0 y: 41.0\n",
"number of steps: 495 x: 63.0 y: 22.5\n",
"number of steps: 378 x: 68.0 y: 42.0\n",
"number of steps: 315 x: 44.0 y: 40.5\n",
"number of steps: 309 x: 53.0 y: 39.0\n",
"number of steps: 125 x: 54.0 y: 49.5\n",
"number of steps: 476 x: 69.0 y: 51.0\n",
"number of steps: 177 x: 52.0 y: 54.5\n",
"number of steps: 423 x: 58.0 y: 34.0\n",
"number of steps: 336 x: 36.0 y: 66.5\n",
"number of steps: 101 x: 52.0 y: 61.0\n",
"number of steps: 388 x: 62.0 y: 59.5\n",
"number of steps: 365 x: 45.0 y: 31.0\n",
"number of steps: 315 x: 50.0 y: 69.5\n",
"number of steps: 256 x: 39.0 y: 67.0\n",
"number of steps: 274 x: 58.0 y: 55.5\n",
"number of steps: 263 x: 65.0 y: 47.0\n",
"number of steps: 127 x: 60.0 y: 53.5\n",
"number of steps: 100 x: 66.0 y: 46.0\n",
"number of steps: 499 x: 79.0 y: 39.5\n",
"number of steps: 218 x: 76.0 y: 67.0\n",
"number of steps: 332 x: 105.0 y: 41.5\n",
"number of steps: 301 x: 39.0 y: 72.0\n",
"number of steps: 497 x: 109.0 y: 13.5\n",
"number of steps: 192 x: 61.0 y: 56.0\n",
"number of steps: 414 x: 97.0 y: 47.5\n",
"number of steps: 120 x: 66.0 y: 60.0\n",
"number of steps: 331 x: 80.0 y: 42.5\n",
"number of steps: 324 x: 55.0 y: 62.0\n",
"number of steps: 254 x: 89.0 y: 73.5\n",
"number of steps: 418 x: 68.0 y: 68.0\n",
"number of steps: 392 x: 74.0 y: 63.5\n",
"number of steps: 372 x: 73.0 y: 66.0\n",
"number of steps: 447 x: 79.0 y: 56.5\n",
"number of steps: 249 x: 86.0 y: 61.0\n",
"number of steps: 279 x: 73.0 y: 63.5\n",
"number of steps: 349 x: 81.0 y: 69.0\n",
"number of steps: 221 x: 74.0 y: 75.5\n",
"number of steps: 472 x: 93.0 y: 49.0\n",
"number of steps: 223 x: 80.0 y: 56.5\n",
"number of steps: 319 x: 78.0 y: 66.0\n",
"number of steps: 179 x: 79.0 y: 64.5\n",
"number of steps: 439 x: 125.0 y: 66.0\n",
"number of steps: 496 x: 99.0 y: 48.5\n",
"number of steps: 409 x: 104.0 y: 98.0\n",
"number of steps: 307 x: 94.0 y: 57.5\n",
"number of steps: 320 x: 76.0 y: 42.0\n",
"number of steps: 475 x: 131.0 y: 51.5\n",
"number of steps: 404 x: 118.0 y: 53.0\n",
"number of steps: 220 x: 97.0 y: 75.5\n",
"number of steps: 397 x: 117.0 y: 62.0\n"
]
}
],
"source": [
"# Generaterandom walks along trendline using previously defined random walk function\n",
"x_scatter = np.array([])\n",
"y_scatter = np.array([])\n",
"\n",
"for i,j in zip(x,y): # for efficient for loops, use zip function to combines arrays of equivalent length\n",
" a,b = random_walk(i,j) # generate new position for each element in x,y using randomwalks\n",
" x_scatter = np.append(x_scatter,a)\n",
" y_scatter = np.append(y_scatter,b)"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"image/png": "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\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f6d0587a320>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot new data as scatter plot along original trendline\n",
"plt.plot(x,y,c='r')\n",
"plt.scatter(x_scatter,y_scatter)\n",
"plt.show()"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"4.0 20.5\n",
"22.0 20.0\n",
"-1.0 31.5\n",
"-5.0 13.0\n",
"1.0 20.5\n",
"13.0 21.0\n",
"3.0 18.5\n",
"19.0 20.0\n",
"-1.0 25.5\n",
"25.0 15.0\n",
"10.0 11.5\n",
"17.0 53.0\n",
"12.0 19.5\n",
"17.0 25.0\n",
"8.0 25.5\n",
"7.0 37.0\n",
"8.0 39.5\n",
"24.0 22.0\n",
"-3.0 29.5\n",
"27.0 33.0\n",
"27.0 25.5\n",
"13.0 44.0\n",
"5.0 35.5\n",
"22.0 35.0\n",
"9.0 40.5\n",
"43.0 17.0\n",
"34.0 36.5\n",
"37.0 43.0\n",
"46.0 42.5\n",
"35.0 26.0\n",
"31.0 48.5\n",
"45.0 39.0\n",
"40.0 44.5\n",
"32.0 26.0\n",
"46.0 45.5\n",
"28.0 34.0\n",
"36.0 30.5\n",
"17.0 40.0\n",
"45.0 57.5\n",
"51.0 45.0\n",
"47.0 37.5\n",
"53.0 64.0\n",
"55.0 39.5\n",
"40.0 32.0\n",
"46.0 38.5\n",
"42.0 26.0\n",
"47.0 32.5\n",
"71.0 44.0\n",
"46.0 58.5\n",
"67.0 41.0\n",
"63.0 22.5\n",
"68.0 42.0\n",
"44.0 40.5\n",
"53.0 39.0\n",
"54.0 49.5\n",
"69.0 51.0\n",
"52.0 54.5\n",
"58.0 34.0\n",
"36.0 66.5\n",
"52.0 61.0\n",
"62.0 59.5\n",
"45.0 31.0\n",
"50.0 69.5\n",
"39.0 67.0\n",
"58.0 55.5\n",
"65.0 47.0\n",
"60.0 53.5\n",
"66.0 46.0\n",
"79.0 39.5\n",
"76.0 67.0\n",
"105.0 41.5\n",
"39.0 72.0\n",
"109.0 13.5\n",
"61.0 56.0\n",
"97.0 47.5\n",
"66.0 60.0\n",
"80.0 42.5\n",
"55.0 62.0\n",
"89.0 73.5\n",
"68.0 68.0\n",
"74.0 63.5\n",
"73.0 66.0\n",
"79.0 56.5\n",
"86.0 61.0\n",
"73.0 63.5\n",
"81.0 69.0\n",
"74.0 75.5\n",
"93.0 49.0\n",
"80.0 56.5\n",
"78.0 66.0\n",
"79.0 64.5\n",
"125.0 66.0\n",
"99.0 48.5\n",
"104.0 98.0\n",
"94.0 57.5\n",
"76.0 42.0\n",
"131.0 51.5\n",
"118.0 53.0\n",
"97.0 75.5\n",
"117.0 62.0\n"
]
}
],
"source": [
"# Output/read dataset to/from csv file using built-in functions (bad way)\n",
"f = open('dataset1.csv','w')\n",
"f.write('x,y\\n')\n",
"for i,j in zip(x_scatter,y_scatter):\n",
" print(i,j)\n",
" f.write(str(i) + ',' + str(j) + '\\n')\n",
"f.close()"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x,y\n",
"4.0,20.5\n",
"22.0,20.0\n",
"-1.0,31.5\n",
"-5.0,13.0\n",
"1.0,20.5\n",
"13.0,21.0\n",
"3.0,18.5\n",
"19.0,20.0\n",
"-1.0,25.5\n",
"25.0,15.0\n",
"10.0,11.5\n",
"17.0,53.0\n",
"12.0,19.5\n",
"17.0,25.0\n",
"8.0,25.5\n",
"7.0,37.0\n",
"8.0,39.5\n",
"24.0,22.0\n",
"-3.0,29.5\n",
"27.0,33.0\n",
"27.0,25.5\n",
"13.0,44.0\n",
"5.0,35.5\n",
"22.0,35.0\n",
"9.0,40.5\n",
"43.0,17.0\n",
"34.0,36.5\n",
"37.0,43.0\n",
"46.0,42.5\n",
"35.0,26.0\n",
"31.0,48.5\n",
"45.0,39.0\n",
"40.0,44.5\n",
"32.0,26.0\n",
"46.0,45.5\n",
"28.0,34.0\n",
"36.0,30.5\n",
"17.0,40.0\n",
"45.0,57.5\n",
"51.0,45.0\n",
"47.0,37.5\n",
"53.0,64.0\n",
"55.0,39.5\n",
"40.0,32.0\n",
"46.0,38.5\n",
"42.0,26.0\n",
"47.0,32.5\n",
"71.0,44.0\n",
"46.0,58.5\n",
"67.0,41.0\n",
"63.0,22.5\n",
"68.0,42.0\n",
"44.0,40.5\n",
"53.0,39.0\n",
"54.0,49.5\n",
"69.0,51.0\n",
"52.0,54.5\n",
"58.0,34.0\n",
"36.0,66.5\n",
"52.0,61.0\n",
"62.0,59.5\n",
"45.0,31.0\n",
"50.0,69.5\n",
"39.0,67.0\n",
"58.0,55.5\n",
"65.0,47.0\n",
"60.0,53.5\n",
"66.0,46.0\n",
"79.0,39.5\n",
"76.0,67.0\n",
"105.0,41.5\n",
"39.0,72.0\n",
"109.0,13.5\n",
"61.0,56.0\n",
"97.0,47.5\n",
"66.0,60.0\n",
"80.0,42.5\n",
"55.0,62.0\n",
"89.0,73.5\n",
"68.0,68.0\n",
"74.0,63.5\n",
"73.0,66.0\n",
"79.0,56.5\n",
"86.0,61.0\n",
"73.0,63.5\n",
"81.0,69.0\n",
"74.0,75.5\n",
"93.0,49.0\n",
"80.0,56.5\n",
"78.0,66.0\n",
"79.0,64.5\n",
"125.0,66.0\n",
"99.0,48.5\n",
"104.0,98.0\n",
"94.0,57.5\n",
"76.0,42.0\n",
"131.0,51.5\n",
"118.0,53.0\n",
"97.0,75.5\n",
"117.0,62.0\n",
"\n"
]
}
],
"source": [
"f = open('dataset1.csv','r')\n",
"print(f.read())\n",
"f.close()\n"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"-9.0 20.5\n",
"4.53846153846 21.7692307692\n",
"4.07692307692 33.0384615385\n",
"0.615384615385 21.3076923077\n",
"12.1538461538 22.5769230769\n",
"13.6923076923 28.8461538462\n",
"18.2307692308 33.1153846154\n",
"15.7692307692 31.3846153846\n",
"30.3076923077 20.6538461538\n",
"29.8461538462 31.9230769231\n",
"22.3846153846 36.1923076923\n",
"37.9230769231 33.4615384615\n",
"27.4615384615 33.7307692308\n",
"32.0 37.0\n",
"35.5384615385 39.2692307692\n",
"38.0769230769 34.5384615385\n",
"43.6153846154 40.8076923077\n",
"41.1538461538 41.0769230769\n",
"43.6923076923 39.3461538462\n",
"55.2307692308 42.6153846154\n",
"52.7692307692 49.8846153846\n",
"50.3076923077 41.1538461538\n",
"59.8461538462 46.4230769231\n",
"59.3846153846 47.6923076923\n",
"70.9230769231 67.9615384615\n",
"68.4615384615 46.2307692308\n",
"63.0 55.5\n",
"75.5384615385 51.7692307692\n",
"86.0769230769 53.0384615385\n",
"70.6153846154 58.3076923077\n",
"79.1538461538 55.5769230769\n",
"83.6923076923 60.8461538462\n",
"82.2307692308 55.1153846154\n",
"78.7692307692 62.3846153846\n",
"94.3076923077 58.6538461538\n",
"92.8461538462 67.9230769231\n",
"90.3846153846 63.1923076923\n",
"100.923076923 74.4615384615\n",
"83.4615384615 61.7307692308\n",
"100.0 68.0\n"
]
}
],
"source": [
"# Output/read dataset to/from csv file using built-in functions (good way)\n",
"with open('dataset1_1.csv','w') as f:\n",
" f.write('x,y\\n')\n",
" for i,j in zip(x_new,y_new):\n",
" print(i,j)\n",
" f.write(str(i) + ',' + str(j) + '\\n')"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x,y\n",
"-9.0,20.5\n",
"4.53846153846,21.7692307692\n",
"4.07692307692,33.0384615385\n",
"0.615384615385,21.3076923077\n",
"12.1538461538,22.5769230769\n",
"13.6923076923,28.8461538462\n",
"18.2307692308,33.1153846154\n",
"15.7692307692,31.3846153846\n",
"30.3076923077,20.6538461538\n",
"29.8461538462,31.9230769231\n",
"22.3846153846,36.1923076923\n",
"37.9230769231,33.4615384615\n",
"27.4615384615,33.7307692308\n",
"32.0,37.0\n",
"35.5384615385,39.2692307692\n",
"38.0769230769,34.5384615385\n",
"43.6153846154,40.8076923077\n",
"41.1538461538,41.0769230769\n",
"43.6923076923,39.3461538462\n",
"55.2307692308,42.6153846154\n",
"52.7692307692,49.8846153846\n",
"50.3076923077,41.1538461538\n",
"59.8461538462,46.4230769231\n",
"59.3846153846,47.6923076923\n",
"70.9230769231,67.9615384615\n",
"68.4615384615,46.2307692308\n",
"63.0,55.5\n",
"75.5384615385,51.7692307692\n",
"86.0769230769,53.0384615385\n",
"70.6153846154,58.3076923077\n",
"79.1538461538,55.5769230769\n",
"83.6923076923,60.8461538462\n",
"82.2307692308,55.1153846154\n",
"78.7692307692,62.3846153846\n",
"94.3076923077,58.6538461538\n",
"92.8461538462,67.9230769231\n",
"90.3846153846,63.1923076923\n",
"100.923076923,74.4615384615\n",
"83.4615384615,61.7307692308\n",
"100.0,68.0\n",
"\n"
]
}
],
"source": [
"with open('dataset1_1.csv','r') as f:\n",
" print(f.read())"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {},
"outputs": [],
"source": [
"# Output/read dataset to/from csv file using pandas\n",
"import pandas as pd\n",
"\n",
"df = pd.DataFrame({'x':x_scatter,'y':y_scatter})\n",
"df.to_csv('dataset2.csv',index=0)"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"scrolled": true
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"x,y\n",
"4.0,20.5\n",
"22.0,20.0\n",
"-1.0,31.5\n",
"-5.0,13.0\n",
"1.0,20.5\n",
"13.0,21.0\n",
"3.0,18.5\n",
"19.0,20.0\n",
"-1.0,25.5\n",
"25.0,15.0\n",
"10.0,11.5\n",
"17.0,53.0\n",
"12.0,19.5\n",
"17.0,25.0\n",
"8.0,25.5\n",
"7.0,37.0\n",
"8.0,39.5\n",
"24.0,22.0\n",
"-3.0,29.5\n",
"27.0,33.0\n",
"27.0,25.5\n",
"13.0,44.0\n",
"5.0,35.5\n",
"22.0,35.0\n",
"9.0,40.5\n",
"43.0,17.0\n",
"34.0,36.5\n",
"37.0,43.0\n",
"46.0,42.5\n",
"35.0,26.0\n",
"31.0,48.5\n",
"45.0,39.0\n",
"40.0,44.5\n",
"32.0,26.0\n",
"46.0,45.5\n",
"28.0,34.0\n",
"36.0,30.5\n",
"17.0,40.0\n",
"45.0,57.5\n",
"51.0,45.0\n",
"47.0,37.5\n",
"53.0,64.0\n",
"55.0,39.5\n",
"40.0,32.0\n",
"46.0,38.5\n",
"42.0,26.0\n",
"47.0,32.5\n",
"71.0,44.0\n",
"46.0,58.5\n",
"67.0,41.0\n",
"63.0,22.5\n",
"68.0,42.0\n",
"44.0,40.5\n",
"53.0,39.0\n",
"54.0,49.5\n",
"69.0,51.0\n",
"52.0,54.5\n",
"58.0,34.0\n",
"36.0,66.5\n",
"52.0,61.0\n",
"62.0,59.5\n",
"45.0,31.0\n",
"50.0,69.5\n",
"39.0,67.0\n",
"58.0,55.5\n",
"65.0,47.0\n",
"60.0,53.5\n",
"66.0,46.0\n",
"79.0,39.5\n",
"76.0,67.0\n",
"105.0,41.5\n",
"39.0,72.0\n",
"109.0,13.5\n",
"61.0,56.0\n",
"97.0,47.5\n",
"66.0,60.0\n",
"80.0,42.5\n",
"55.0,62.0\n",
"89.0,73.5\n",
"68.0,68.0\n",
"74.0,63.5\n",
"73.0,66.0\n",
"79.0,56.5\n",
"86.0,61.0\n",
"73.0,63.5\n",
"81.0,69.0\n",
"74.0,75.5\n",
"93.0,49.0\n",
"80.0,56.5\n",
"78.0,66.0\n",
"79.0,64.5\n",
"125.0,66.0\n",
"99.0,48.5\n",
"104.0,98.0\n",
"94.0,57.5\n",
"76.0,42.0\n",
"131.0,51.5\n",
"118.0,53.0\n",
"97.0,75.5\n",
"117.0,62.0\n",
"\n"
]
}
],
"source": [
"with open('dataset2.csv','r') as f:\n",
" print(f.read())"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {
"scrolled": true
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style>\n",
" .dataframe thead tr:only-child th {\n",
" text-align: right;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: left;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>x</th>\n",
" <th>y</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>4.0</td>\n",
" <td>20.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>22.0</td>\n",
" <td>20.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>-1.0</td>\n",
" <td>31.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>-5.0</td>\n",
" <td>13.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>1.0</td>\n",
" <td>20.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>5</th>\n",
" <td>13.0</td>\n",
" <td>21.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>6</th>\n",
" <td>3.0</td>\n",
" <td>18.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>7</th>\n",
" <td>19.0</td>\n",
" <td>20.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>8</th>\n",
" <td>-1.0</td>\n",
" <td>25.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>9</th>\n",
" <td>25.0</td>\n",
" <td>15.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>10</th>\n",
" <td>10.0</td>\n",
" <td>11.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>11</th>\n",
" <td>17.0</td>\n",
" <td>53.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>12</th>\n",
" <td>12.0</td>\n",
" <td>19.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>13</th>\n",
" <td>17.0</td>\n",
" <td>25.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>8.0</td>\n",
" <td>25.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>15</th>\n",
" <td>7.0</td>\n",
" <td>37.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>16</th>\n",
" <td>8.0</td>\n",
" <td>39.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>17</th>\n",
" <td>24.0</td>\n",
" <td>22.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>-3.0</td>\n",
" <td>29.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>19</th>\n",
" <td>27.0</td>\n",
" <td>33.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>20</th>\n",
" <td>27.0</td>\n",
" <td>25.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>21</th>\n",
" <td>13.0</td>\n",
" <td>44.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>5.0</td>\n",
" <td>35.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>23</th>\n",
" <td>22.0</td>\n",
" <td>35.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>24</th>\n",
" <td>9.0</td>\n",
" <td>40.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>25</th>\n",
" <td>43.0</td>\n",
" <td>17.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>26</th>\n",
" <td>34.0</td>\n",
" <td>36.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>27</th>\n",
" <td>37.0</td>\n",
" <td>43.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>28</th>\n",
" <td>46.0</td>\n",
" <td>42.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>29</th>\n",
" <td>35.0</td>\n",
" <td>26.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>...</th>\n",
" <td>...</td>\n",
" <td>...</td>\n",
" </tr>\n",
" <tr>\n",
" <th>70</th>\n",
" <td>105.0</td>\n",
" <td>41.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>71</th>\n",
" <td>39.0</td>\n",
" <td>72.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>72</th>\n",
" <td>109.0</td>\n",
" <td>13.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>73</th>\n",
" <td>61.0</td>\n",
" <td>56.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>74</th>\n",
" <td>97.0</td>\n",
" <td>47.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>75</th>\n",
" <td>66.0</td>\n",
" <td>60.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>76</th>\n",
" <td>80.0</td>\n",
" <td>42.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>77</th>\n",
" <td>55.0</td>\n",
" <td>62.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78</th>\n",
" <td>89.0</td>\n",
" <td>73.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>79</th>\n",
" <td>68.0</td>\n",
" <td>68.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>80</th>\n",
" <td>74.0</td>\n",
" <td>63.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>81</th>\n",
" <td>73.0</td>\n",
" <td>66.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>82</th>\n",
" <td>79.0</td>\n",
" <td>56.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>83</th>\n",
" <td>86.0</td>\n",
" <td>61.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>84</th>\n",
" <td>73.0</td>\n",
" <td>63.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>85</th>\n",
" <td>81.0</td>\n",
" <td>69.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>86</th>\n",
" <td>74.0</td>\n",
" <td>75.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>87</th>\n",
" <td>93.0</td>\n",
" <td>49.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>88</th>\n",
" <td>80.0</td>\n",
" <td>56.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>89</th>\n",
" <td>78.0</td>\n",
" <td>66.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>90</th>\n",
" <td>79.0</td>\n",
" <td>64.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>91</th>\n",
" <td>125.0</td>\n",
" <td>66.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>92</th>\n",
" <td>99.0</td>\n",
" <td>48.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>93</th>\n",
" <td>104.0</td>\n",
" <td>98.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>94</th>\n",
" <td>94.0</td>\n",
" <td>57.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>95</th>\n",
" <td>76.0</td>\n",
" <td>42.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>96</th>\n",
" <td>131.0</td>\n",
" <td>51.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>97</th>\n",
" <td>118.0</td>\n",
" <td>53.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>98</th>\n",
" <td>97.0</td>\n",
" <td>75.5</td>\n",
" </tr>\n",
" <tr>\n",
" <th>99</th>\n",
" <td>117.0</td>\n",
" <td>62.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"<p>100 rows × 2 columns</p>\n",
"</div>"
],
"text/plain": [
" x y\n",
"0 4.0 20.5\n",
"1 22.0 20.0\n",
"2 -1.0 31.5\n",
"3 -5.0 13.0\n",
"4 1.0 20.5\n",
"5 13.0 21.0\n",
"6 3.0 18.5\n",
"7 19.0 20.0\n",
"8 -1.0 25.5\n",
"9 25.0 15.0\n",
"10 10.0 11.5\n",
"11 17.0 53.0\n",
"12 12.0 19.5\n",
"13 17.0 25.0\n",
"14 8.0 25.5\n",
"15 7.0 37.0\n",
"16 8.0 39.5\n",
"17 24.0 22.0\n",
"18 -3.0 29.5\n",
"19 27.0 33.0\n",
"20 27.0 25.5\n",
"21 13.0 44.0\n",
"22 5.0 35.5\n",
"23 22.0 35.0\n",
"24 9.0 40.5\n",
"25 43.0 17.0\n",
"26 34.0 36.5\n",
"27 37.0 43.0\n",
"28 46.0 42.5\n",
"29 35.0 26.0\n",
".. ... ...\n",
"70 105.0 41.5\n",
"71 39.0 72.0\n",
"72 109.0 13.5\n",
"73 61.0 56.0\n",
"74 97.0 47.5\n",
"75 66.0 60.0\n",
"76 80.0 42.5\n",
"77 55.0 62.0\n",
"78 89.0 73.5\n",
"79 68.0 68.0\n",
"80 74.0 63.5\n",
"81 73.0 66.0\n",
"82 79.0 56.5\n",
"83 86.0 61.0\n",
"84 73.0 63.5\n",
"85 81.0 69.0\n",
"86 74.0 75.5\n",
"87 93.0 49.0\n",
"88 80.0 56.5\n",
"89 78.0 66.0\n",
"90 79.0 64.5\n",
"91 125.0 66.0\n",
"92 99.0 48.5\n",
"93 104.0 98.0\n",
"94 94.0 57.5\n",
"95 76.0 42.0\n",
"96 131.0 51.5\n",
"97 118.0 53.0\n",
"98 97.0 75.5\n",
"99 117.0 62.0\n",
"\n",
"[100 rows x 2 columns]"
]
},
"execution_count": 16,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# read csv file as pandas dataframe\n",
"df = pd.read_csv('dataset2.csv')\n",
"df"
]
},
{
"cell_type": "code",
"execution_count": 17,
"metadata": {},
"outputs": [
{
"data": {
"text/plain": [
"LinregressResult(slope=0.32803828637579396, intercept=27.71068280046941, rvalue=0.59933140150475117, pvalue=4.4625298520481446e-11, stderr=0.044259484316452165)"
]
},
"execution_count": 18,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"# Generate linear regression model using stats library from scipy\n",
"from scipy import stats\n",
"\n",
"model = stats.linregress(df['x'],df['y'])\n",
"model"
]
},
{
"cell_type": "code",
"execution_count": 19,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"0.328038286376 27.7106828005\n"
]
}
],
"source": [
"print(model.slope,model.intercept)"
]
},
{
"cell_type": "code",
"execution_count": 20,
"metadata": {},
"outputs": [],
"source": [
"slope = model.slope\n",
"intercept = model.intercept\n",
"x_prime = np.linspace(1,100,40)\n",
"y_prime = slope*x_prime + intercept"
]
},
{
"cell_type": "code",
"execution_count": 21,
"metadata": {},
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAABIwAAAPrCAYAAAA6ABfDAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAAMTQAADE0B0s6tTgAAIABJREFUeJzs3Xt4XXWZL/DvThqEFIpJWxHpJUdBBlpKh0lbYAQc5XCR\n8/QwjIhyIMUWkAcvw3Rw0Mcz4zn4yJnxAjrIEUFLKcjgKA52hAGHu4jaBqdAuYgwJlDAqW1CwabQ\ndGedPzLtYUmAQtLspvl8/mr22nuvd6c/Vsi37+9dlaIoigAAAADAf6qrdQEAAAAAbF8ERgAAAACU\nCIwAAAAAKBEYAQAAAFAiMAIAAACgRGAEAAAAQInACAAAAIASgREAAAAAJQIjAAAAAEoERgAAAACU\njKl1AQN505velIkTJ9a6jB3eiy++mDe96U21LoMdhPXEULOmGErWE0PNmmKoWVMMJeuJV/Lb3/42\nL7744lY9d7sMjCZOnJhVq1bVuowd3s0335yjjz661mWwg7CeGGrWFEPJemKoWVMMNWuKoWQ98Uom\nTZq01c+1JQ0AAACAEoERAAAAACXb5ZY0AAAA4LX19fWlKIqXPV6tVmtQDbVWqVRSVzc0vUECIwAA\nABhh+vr60tnZmRdeeOFlxyZOnJhHH320BlWxPdh5550zderUQQdHAiMAAAAYYVavXp26urrss88+\nqVQqpWPPPfdcxo0bV6PKqKWiKPLUU09l9erVeetb3zqo9xIYAQAAwAhSFEWeffbZtLS0ZMyYl/9a\nX1dXl/r6+hpUxvZgjz32SEdHR/bYY4+XhYmvh6HXAAAAMIIURZGiKNLQ0FDrUtgONTQ0bFkjgyEw\nAgAAgBFksEEAo4PACAAAAIAhJTACAAAAhs3f/M3f5Nvf/vZrPm/p0qX5i7/4i0Gd64477sjMmTMH\n9R6jlaHXAAAAwLDYtGlTzj///K167ty5czN37txtXBGvRGAEAAAAI93cucnjjydJdu3rS+qGcEPR\nO96RLF36mk+7+eab8+lPfzqbNm1KU1NTvv71r2f16tX56Ec/moMPPjj33ntvPvOZz+SGG27IzJkz\nc8455+T555/P6aefnvvuuy8TJ07M/vvvnxdffDGLFy/O4sWLc/311+f666/PHXfckY997GM5/PDD\n85Of/CSbNm3KlVdemdbW1mzatCnHHXdc1q5dmw0bNuTAAw/M5ZdfnrFjxw7d92AUsiUNAAAAGJTV\nq1fn5JNPzpVXXpn7778/Z555Zt7//venKIo8/PDDaWtry4oVK3LiiSeWXnf++ednl112ycMPP5wb\nb7wx99xzzyue45FHHsm8efNy33335eMf/3g+85nPJEnq6+tzzTXXpL29PStXrszuu++eiy++eJt+\n3tFAhxEAAACMdC/pAPrdunXZfffdh/X0P//5z3PAAQfkgAMOSJL8j//xP/LRj340Tz31VN7+9rfn\niCOOGPB1t956ay666KJUKpXstttuOemkk/LYY48N+Ny99947c+bMSZIccsgh+dKXvpSk/25gF110\nUW644YZs2rQp69aty6GHHroNPuXoosMIAAAA2GZ23XXXrX5upVJ5xWM777zzlj/X19dn06ZNSZJr\nrrkmt912W+6888488MADOffcc/PCCy+88YJJIjACAAAABunggw/OAw88kJUrVyZJrr322uy1117Z\na6+9XvV173nPe3LllVemKIr87ne/yz/+4z++7nN3d3dnwoQJGTduXJ5//vksXrz4jXwEfo8taQAA\nAMCgTJw4Md/+9rfT1ta2Zej1d7/73axevfpVX/c3f/M3WbBgQfbbb79MmDAhBx54YN785je/rnO3\ntbXlBz/4Qfbdd99MnDgxhx12WDo7OwfzcYjACAAAABgCxxxzTI455pjSY/vvv39WrFhReuylHUC7\n7LJLrrrqquy8885Zv359jj766Bx33HFJktNOOy2nnXZakuTd73536X2mT5+ejo6OJMnuu++eW265\nZcCafv91bD2BEQAAAFAT3d3dOfbYY1OtVvPCCy/kv//3/54PfOADtS6LCIwAAACAGnnLW96Se++9\nt9ZlMICtGnr9iU98Ii0tLalUKqVWrl/96lc59NBD8853vjOzZs3Kgw8+uFXHAAAAANh+bVVg9P73\nvz933313pk6dWnr8Ix/5SM4888w8+uijOe+887bsLXytYwAAAABsv7YqMDr88MMzadKk0mOrV69O\ne3t7TjnllCTJn/3Zn+XJJ5/MY4899qrHAAAAANi+veEZRk8++WT23HPPjBnT/xaVSiVTpkzJE088\nkd133/0Vj+29994ve68LL7wwF1544Zavn3322dx8881vtDS20gsvvOD7zJCxnhhq1hRDyXpiqFlT\nDDVritdr4sSJee6551JX9/I+kKIosm7duhpUxfagr68vGzZseMU7x22t7WLo9cKFC7Nw4cItX0+a\nNClHH310DSsaHW6++WbfZ4aM9cRQs6YYStYTQ82aYqhZU7we1Wo1jz76aMaNG5f6+vqXHV+3bl12\n3333GlQ2eB0dHbnpppty1llnbXnsK1/5Sj74wQ/mrW99aw0rGzmq1Wp22WWXHHnkkQOuj621VVvS\nBjJ58uQ888wz2bRpU5L+BPOJJ57IlClTXvUYAAAAwEA6Ojpy6aWXlh77yle+kt/85jev+702ZxK8\nMW+4w+gtb3lLDjrooFx99dU57bTTct1112XSpElbtpy92jEAAABg6Mz9h7l5vPvxJElftS919W+4\nP+Rl3tH0jiz90NJXfc6GDRty2mmn5YEHHkhDQ0P22GOP/OhHP8oVV1yRr371qymKIg0NDfne976X\nSZMm5bjjjsvatWuzYcOGHHjggbn88sszduzYnHXWWens7MzMmTMzZcqUtLa25umnn85JJ52UXXbZ\nJYsXL860adPy13/917ntttuycePGvPOd78w3vvGNNDU15bTTTktdXd2W+cqPPPLIkH0fRputCow+\n8pGP5IYbbshvfvObHH300dltt93y2GOP5Rvf+EZOO+20XHDBBRk3blyuuOKKLa95tWMAAADAjuOm\nm27Ks88+m4ceeihJ0tXVlTvuuCPnn39+7rnnnuy5557p6elJktTX1+eaa67J+PHjUxRFzj777Fx8\n8cX51Kc+lUsvvTTnnHNOVqxYseW9Fy1alO985zuZOXNmkuSCCy7I2LFjs2zZsiTJ5z73ufzP//k/\nc8kllyRJ7r333tx9993ZbbfdhvNbsMPZqsDoG9/4xoCP77vvvvnpT3/6uo8BAAAAQ+elHUC1mGF0\n4IEH5uGHH87ZZ5+dI444Iu973/tyww035NRTT82ee+6ZJGlsbEzSP5T5oosuyg033JBNmzZl3bp1\nOfTQQ7f6XNdff33WrVuX6667LkmycePGtLS0bDl+4oknCouGwND1qAEAAACj0tvf/vY89NBDOeaY\nY/KTn/wk06dPz7PPPjvgc6+55prcdtttufPOO/PAAw/k3HPPzQsvvLDV5yqKIhdffHFWrFiRFStW\n5KGHHsqNN9645fiuu+466M+DwAgAAAAYpFWrVqVSqWTu3Ln50pe+lKIocuqpp+bqq6/OM888kyTp\n6elJT09Puru7M2HChIwbNy7PP/98Fi9evOV9xo0bl3Xr1pXe+/cfO/7443PRRRdt2eLW09OTBx98\n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\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAicAIAAAAgBKBEQAAAAAlAiMAAAAASgRGAAAAAJQIjAAAAAAoERgBAAAAUCIw\nAgAAAKBEYAQAAABAyZAERjfeeGMOOuigzJw5M9OnT8+VV16ZJFm9enWOOeaY7LPPPpk+fXruuuuu\noTgdAAAAANvQmMG+QVEUOeWUU3LHHXdkxowZ6ejoyB/8wR/khBNOyKc+9akcfPDBuemmm7J8+fL8\n6Z/+aX7961+noaFhKGoHAAAAYBsYkg6jSqWSZ599Nkny3HPPZfz48XnTm96Uf/zHf8xZZ52VJJk1\na1be9ra35c477xyKUwIAAACwjQy6w6hSqeQ73/lOTjjhhIwdOzbd3d35/ve/n+effz69vb1561vf\nuuW5LS0teeKJJwZ7SgAAAAC2oUpRFMVg3mDTpk058sgjc/755+fwww/P8uXLM3fu3KxYsSJTpkzJ\niy++uOW5H/jAB3LMMcdk/vz5pfe48MILc+GFF275+tlnn8111103mLLYCi+88EJ23nnnWpfBDsJ6\nYqhZUwwl64mhZk0x1KwphpL1xCtZsGBBVq1atVXPHXSH0YoVK/L000/n8MMPT9K/9WzSpEm5//77\nM2bMmPzmN7/Z0mXU0dGRKVOmvOw9Fi5cmIULF275etKkSTn66KMHWxqv4eabb/Z9ZshYTww1a4qh\nZD0x1Kwphpo1xVCynhgKg55hNHny5DzzzDN5+OGHkySPPfZYHn/88ey777458cQTc+mllyZJli9f\nnqeeeipHHHHEYE8JAAAAwDY06A6jPfbYI5dddlk+8IEPpK6uLn19ffna176WKVOm5O/+7u9y6qmn\nZp999slOO+2Uq6++2h3SAAAAALZzgw6MkuRDH/pQPvShD73s8T322CM/+tGPhuIUAAAAAAyTQW9J\nAwAAAGDHIjACAAAAoERgBAAAAECJwAgAAACAEoERAAAAACUCIwAAAABKBEYAAAAAlAiMAAAAACgR\nGAEAAABQIjACAAAAoERgBAAAAECJwAgAAACAEoERAAAAACUCIwAAAABKBEYAAAAAlAiMAAAAACgR\nGAEAAABQIjACAAAAoERgBAAAAECJwAgAAACAEoERAAAAACUCIwAAAABKBEYAAAAAlAiMAAAAACgR\nGAEAAABQIjACAAAAoERgBAAAAECJwAgAAACAEoERAAAAACUCIwAAAABKBEYAAAAAlAiMAAAAACgR\nGAEAAABQIjACAAAAoERgBAAAAECJwAgAAACAkjG1LgAAgNGpKIq0d3anY836tEwYm9apTalUKrUu\nC17GWgVGI4ERAADDblV3T9oWLcuTXT1pqK9Lb7Uvk5sbs2T+7Exqaqx1ebCFtQqMVrakAQAwrIqi\n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\n+8qxd8eWyLK5j6sBAADAatFZdAGwHA30lOPgwyMxVp+O2sRMVPu7Y6jSIywCAABgTRAYwQVkWRbD\n1d4YrvYWXQoAAAAsKUfSAAAAAMgRGAEAAACQIzACAAAAIEdgBAAAAECOwAgAAACAHIERAAAAADkC\nIwAAAAByBEYAAAAA5AiMAAAAAMgRGAEAAACQIzACAAAAIEdgBAAAAECOwAgAAACAHIERAAAAADkC\nIwAAAAByBEYAAAAA5AiMAAAAAMgRGAEAAACQIzACAAAAIEdgBAAAAECOwAgAAACAHIERAAAAADkC\nIwAAAAByBEYAAAAA5AiMAAAAAMgRGAEAAACQIzACAAAAIEdgBAAAAECOwAgAAACAHIERAAAAADkC\nIwAAAAByBEYAAAAA5AiMAAAAAMgRGAEAAACQIzACAAAAIEdgBAAAAECOwAgAAACAHIERAAAAADkC\nIwAAAAByspRSKrqI861fvz7e+c53Fl3GqvfGG2/EO97xjqLLYJXQT7SbnqKd9BPtpqdoNz1FO+kn\nLuQf//hHnDp16pJ+dlkGRiyNgYGBGB8fL7oMVgn9RLvpKdpJP9Fueop201O0k36iHRxJAwAAACBH\nYAQAAABATumRRx55pOgiKM4tt9xSdAmsIvqJdtNTtJN+ot30FO2mp2gn/cRCmWEEAAAAQI4jaQAA\nAADkCIwAAAAAyBEYAQAAAJAjMFqDXnrppfjoRz8a1113XQwPD8ef/vSnoktiBXnzzTfj7rvvjuuu\nuy4+9KEPxR133BGHDx+OiIi///3vceedd8amTZvi+uuvj9/85jcFV8tKsmfPnsiyLH76059GhH5i\n/k6dOhUPPvhgbNq0KW644Yb4whe+EBE+/5i/n//853HTTTfFjTfeGNdff3088cQTEWGd4tJ89atf\njWq1GlmWxQsvvHDu9YutSdYrLmaunrrYHj3CesU8JdacrVu3pj179qSUUvrxj3+choaGii2IFeXk\nyZPpwIEDqdVqpZRS+u53v5tGRkZSSil96UtfSt/85jdTSimNjo6m97znPen06dMFVcpKcvTo0XTL\nLbekm2++Of3kJz9JKekn5u+hhx5KDz744Ll16sSJEykln3/MT6vVSj09PenFF19MKb21Xq1fvz69\n/vrr1ikuybPPPpuOHz+eKpVKev7558+9frE1yXrFxczVUxfbo6dkX8X8CIzWmFdffTVt2LAhNRqN\nlNJbm6Crr746vfTSSwVXxkp16NChVKlUUkopdXd3n/tillJKw8PD6ZlnnimoMlaKZrOZbr/99jQ2\nNpZGRkbOBUb6ifl444030oYNG9I///nP3Os+/5ivVquVent707PPPptSSunFF19M1157bTp16pR1\nisvy9i/3F1uTrFdcqvNDyLd7+x49Jfsq5seRtDXm+PHj8e53vzs6OzsjIiLLsti4cWMcO3as4MpY\nqR577LG46667YnJyMhqNRlxzzTXnrlWrVb3F/2vXrl1x6623xkc+8pFzr+kn5uvIkSPR29sbO3fu\njKGhofj4xz8eBw8e9PnHvGVZFj/84Q/jM5/5TFQqlfjYxz4WTzzxRPzrX/+yTjFvF1uTrFe0w9k9\neoR9FfPXWXQBwMq1c+fOOHz4cBw8eDBOnjxZdDmsQH/84x9j//79ztHTNmfOnIl6vR4f/OAH49vf\n/nY8//zzcccdd8SBAweKLo0V6syZM/Gtb30rnnrqqbjtttvi0KFD8elPfzo3iwZgOXn7Hh0Wwh1G\na8zg4GCcOHEizpw5ExERKaU4duxYbNy4seDKWGkeffTReOqpp+IXv/hFlMvl6Ovri87OznjllVfO\n/UytVtNbXNRvf/vbqNVqsWnTpqhWq/Hcc8/Fl7/85fjRj36kn5iXjRs3RkdHR3z+85+PiIgPf/jD\n8d73vjfq9brPP+blhRdeiL/97W9x2223RUTE8PBwDAwMxB/+8AfrFPN2sT25/ToLcf4ePSLs05k3\ngdEa8653vStuuummePLJJyMiYv/+/TEwMBDvf//7C66MlWTXrl2xb9++eOaZZ+Kqq6469/o999wT\njz/+eEREHDp0KF5++eUYGRkpqkxWgAceeCBOnDgRtVotarVa3HzzzfH9738/HnjgAf3EvPT398ft\nt98eTz/9dEREHD16NI4ePRq33nqrzz/m5eyX9z//+c8REXH48OE4cuRIfOADH7BOMW8X25PbrzNf\nF9qjR9inMz9ZSikVXQRL6y9/+Uvcf//9MTk5GVdeeWXs2bMnbrjhhqLLYoUYHx+PwcHBeN/73hcb\nNmyIiIj169fH73//+3j11Vfji1/8Yhw9ejTWrVsX3/ve92Lr1q0FV8xK8olPfCIeeuihuPvuu/UT\n8/bXv/41duzYERMTE9HR0RHf+MY34rOf/azPP+Zt3759sXPnzujo6IhWqxVf//rX495777VOcUm+\n8pWvxIEDB+KVV16Jvr6+2LBhQxw+fPiia5L1iouZq6d+/etfX3CPHhHWK+ZFYAQAAABAjiNpAAAA\nAOQIjAAAAADIERgBAAAAkCMwAgAAACBHYAQAAABAjsAIAAAAgByBEQAAAAA5AiMAAAAAcv4PdyUY\nOVnlrw0AAAAASUVORK5CYII=\n",
"text/plain": [
"<matplotlib.figure.Figure at 0x7f6d0583d2e8>"
]
},
"metadata": {},
"output_type": "display_data"
}
],
"source": [
"# Plot original trendline + randomwalk generated scatter plot + scipy generated linear regression curve\n",
"plt.figure(figsize=(18, 16), dpi= 80, facecolor='w', edgecolor='k')\n",
"plt.plot(x,y,c='r')\n",
"plt.scatter(x_scatter,y_scatter)\n",
"plt.plot(x_prime,y_prime,c='g')\n",
"plt.legend({'original','scatter','model generated'})\n",
"plt.grid()\n",
"plt.show()"
]
},
{
"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.5.2"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment