To implement univariate Linear Regression to fit a straight line using least squares.
- Hardware – PCs
- Anaconda – Python 3.7 Installation / Moodle-Code Runner
- Get the independent variable X and dependent variable Y.
- Calculate the mean of the X -values and the mean of the Y -values.
- Find the slope m of the line of best fit using the formula.
- Compute the y -intercept of the line by using the formula:
- Use the slope m and the y -intercept to form the equation of the line.
- Obtain the straight line equation Y=mX+b and plot the scatterplot.
import numpy as np
# Preprocessing Input data
X = np.array(eval(input()))
Y = np.array(eval(input()))
# Building the model
# write your code here
Xmean=np.mean(X)
Ymean=np.mean(Y)
num,den=0,0
for i in range(len(X)):
num += (X[i]-Xmean)*(Y[i]-Ymean)
den += (X[i]-Xmean)**2
m=num/den
#Linear regression equation: y=mx+c
c=Ymean-m*Xmean
print (m, c)
#Predict the output
Y_pred=m*X+c
print(Y_pred)
Thus the univariate Linear Regression was implemented to fit a straight line using least squares.