Remove .md and image files and move python files into main chapter folders
This commit is contained in:
parent
5978779a9a
commit
67806dab6a
159 changed files with 0 additions and 4562 deletions
|
|
@ -1,95 +0,0 @@
|
|||
# Runestone.Academy thinkcspy course
|
||||
# Chapter 11
|
||||
# Problem 4
|
||||
|
||||
import turtle
|
||||
|
||||
def slope():
|
||||
xlist = []
|
||||
ylist = []
|
||||
sumx = 0
|
||||
sumy = 0
|
||||
sumxy = 0
|
||||
sumxsq = 0
|
||||
count = 0 #n
|
||||
meanx = 0
|
||||
meany = 0
|
||||
slope = 0 #m
|
||||
|
||||
with open('labdata.txt') as lab:
|
||||
for line in lab:
|
||||
values = line.split()
|
||||
xlist += [int(values[0])]
|
||||
ylist += [int(values[1])]
|
||||
x = int(values[0])
|
||||
y = int(values[1])
|
||||
sumx += x
|
||||
sumy += y
|
||||
sumxy += x*y
|
||||
sumxsq += x**2
|
||||
count += 1
|
||||
|
||||
meanx = sumx / count
|
||||
meany = sumy / count
|
||||
|
||||
slope = (sumxy - count*meanx*meany) / (sumxsq - count*meanx**2)
|
||||
|
||||
plotRegression(xlist, ylist, meanx, meany, slope)
|
||||
|
||||
|
||||
|
||||
def plotRegression(xlist, ylist, meanx, meany, slope):
|
||||
#set world coordinates
|
||||
minx = xlist[0]
|
||||
miny = ylist[0]
|
||||
maxx = xlist[0]
|
||||
maxy = ylist[0]
|
||||
count = len(xlist)
|
||||
num = 0
|
||||
|
||||
while num < count:
|
||||
if xlist[num] < minx:
|
||||
minx = xlist[num]
|
||||
if xlist[num] > maxx:
|
||||
maxx = xlist[num]
|
||||
if ylist[num] < miny:
|
||||
miny = ylist[num]
|
||||
if ylist[num] > maxy:
|
||||
maxy = ylist[num]
|
||||
|
||||
num += 1
|
||||
|
||||
turtle.setworldcoordinates(minx-10, miny-10, maxx+10, maxy+10)
|
||||
|
||||
#plot points
|
||||
i = 0
|
||||
wn = turtle.Screen()
|
||||
wn.bgcolor("#222")
|
||||
ella = turtle.Turtle() #points from the labdata.txt
|
||||
ella.color("pink")
|
||||
maya = turtle.Turtle() #line of best fit (yplot)
|
||||
maya.color("lightblue")
|
||||
|
||||
for x in xlist:
|
||||
j = 0
|
||||
yplot = meany + slope*(x - meanx)
|
||||
|
||||
while not j:
|
||||
ella.up()
|
||||
ella.goto(x, ylist[i])
|
||||
ella.dot()
|
||||
|
||||
if i != 0:
|
||||
maya.goto(x, yplot)
|
||||
else:
|
||||
maya.up()
|
||||
maya.goto(x, yplot)
|
||||
maya.down()
|
||||
|
||||
j += 1
|
||||
|
||||
i += 1
|
||||
|
||||
wn.exitonclick()
|
||||
|
||||
slope()
|
||||
Loading…
Reference in a new issue