Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 2

Pseudocode for Linear Regression

1. Start

2. Read Number of Data (n)

3. For i=1 to n:
Read Xi and Yi
Next i

4. Initialize:
sumX = 0
sumX2 = 0
sumY = 0
sumXY = 0

5. Calculate Required Sum


For i=1 to n:
sumX = sumX + Xi
sumX2 = sumX2 + Xi * Xi
sumY = sumY + Yi
sumXY = sumXY + Xi * Yi
Next i

6. Calculate Required Constant a and b of y = a + bx:


b = (n * sumXY - sumX * sumY)/(n*sumX2 - sumX * sumX)
a = (sumY - b*sumX)/n

7. Display value of a and b

8. Stop
#include<iostream>

#define S 50

using namespace std;


int main()
{
int n, i;
float x[S], y[S], sumX=0, sumX2=0, sumY=0, sumXY=0, a, b;

/* Input */
cout<<"How many data points? ";
cin>>n;

cout<<"Enter data:"<< endl;

for(i=1;i<=n;i++)
{
cout<<"x["<< i <<"] = ";
cin>>x[i];
cout<<"y["<< i <<"] = ";
cin>>y[i];
}

/* Calculating Required Sum */


for(i=1;i<=n;i++)
{
sumX = sumX + x[i];
sumX2 = sumX2 + x[i]*x[i];
sumY = sumY + y[i];
sumXY = sumXY + x[i]*y[i];
}
/* Calculating a and b */
b = (n*sumXY-sumX*sumY)/(n*sumX2-sumX*sumX);
a = (sumY - b*sumX)/n;

/* Displaying value of a and b */


cout<<"Calculated value of a is "<< a << "and b is "<< b << endl;
cout<<"Equation of best fit is: y = "<< a <<" + "<< b<<"x";

return(0);
}

You might also like