Files
sf-op/script/CPython/linfit.py
2020-02-07 11:43:37 +01:00

16 lines
361 B
Python

import numpy as np
def linfit(x, y):
"""
Return linear fit
"""
p = np.polyfit(x, y, 1)
f = np.poly1d(p)
x_fit = np.linspace(min(x), max(x), 100)
y_fit = f(x_fit)
yhat = f(x)
ybar = np.sum(y)/len(y)
ssreg = np.sum((yhat - ybar)**2)
sstot = np.sum((y - ybar)**2)
R2 = ssreg / sstot
return (p, x_fit, y_fit, R2)