0% found this document useful (0 votes)
81 views

TP5: Linear Least Square Regression With Multiple Parameters

The document describes using linear least squares regression to fit multiple linear models to different data sets. It first fits a 4th degree polynomial model to a set of x and y values and finds the coefficients that minimize error. It then fits linear, quadratic, cubic, and quartic models to data on average temperatures and precipitation by month. For each, it calculates the coefficients and error. Finally, it fits a linear model of the form qe=kcCe to a set of Ce and qe values and estimates the coefficient kc.

Uploaded by

Borith pang
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
81 views

TP5: Linear Least Square Regression With Multiple Parameters

The document describes using linear least squares regression to fit multiple linear models to different data sets. It first fits a 4th degree polynomial model to a set of x and y values and finds the coefficients that minimize error. It then fits linear, quadratic, cubic, and quartic models to data on average temperatures and precipitation by month. For each, it calculates the coefficients and error. Finally, it fits a linear model of the form qe=kcCe to a set of Ce and qe values and estimates the coefficient kc.

Uploaded by

Borith pang
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

TP5 : Linear least square regression with multiple parameters

1.Find the best fit model of the data set below:


X ( 0.8 ; 1.4 ; 2.7 ; 3.8 ; 4.8 ; 4.9 ) and Y ( 0.69 ; 1.00 ; 2.02 ; 2.39 ; 2.34 ; 2.83 )
 From the comparison, 4th degree is best fit model

Code

x=[0.8;1.4;2.7;3.8;4.8;4.9]
y=[0.69;1.00;2.02;2.39;2.34;2.83]
figure
plot(x,y,'*b')
hold on
%calculate leastsquare
X=[ones(length(y),1),x,x.^2,x.^3,x.^4]
phi=inv(X'*X)*X'*y
ymodel=X*phi
plot(x,ymodel)
err=sum((y-ymodel).^2)

The value of error


err =

0.0882

The coefficients
phi =

1.7067

-2.8294

2.4564

-0.6600

0.0581

So, ymodel = a0+a1x+a2x2+a3x3+a4x4

= 1.7067-2.8294x+2.4564x2-0.66x3+0.0581x4

1
Figure

2. Find the best fit model of each the data set below (plot in subplot)

Table 1 show the value of average maximum temperature, average minimum temperature and
total precipitation per each month

Duration Jan Feb Mar Apr May June July Aug Sep Oct Nov Dec Annual
Avg.max.temperature 57.8 62.2 63.4 76.0 84.3 88.2 90.7 90.7 86.9 79.5 68.0 60.5 76.3
Avg.min.temperature 39.2 43.7 50.6 59.1 67.2 72 74 74.1 70 59.2 49.4 42.2 58.5
Total precipitation 6.06 5.56 4.50 5.79 3.28 6.68 6.80 5.19 4.55 3.19 3.15 5.97 60.7

 From the comparison, 4th degree is best fit model for ymodel, umodel and wmodel

2
Code

x=[1;2;3;4;5;6;7;8;9;10;11;12;13]
y=[57.8;62.2;63.4;76.0;84.3;88.2;90.7;90.7;86.9;79.5;68.0;60.5;76.3]
u=[39.2;43.7;50.6;59.1;67.2;72.0;74.0;74.1;70.0;59.2;49.4;42.2;58.5]
w=[6.06;5.56;4.50;5.79;3.28;6.68;6.80;5.19;4.55;3.19;3.15;5.97;60.70]
figure
subplot(3,1,1)
plot(x,y,'*b')
hold on
%calculate leastsquare
Y=[ones(length(y),1),x]
phiy=inv(Y'*Y)*Y'*y
ymodel=Y*phiy
subplot(3,1,1)
plot(x,ymodel)
erry=sum((y-ymodel).^2)
subplot(3,1,2)
plot(x,u,'*g')
hold on
%calculate leastsquare
U=[ones(length(y),1),x,x.^2,x.^3]
phiu=inv(U'*U)*U'*u
umodel=U*phiu
subplot(3,1,2)
plot(x,umodel)
erru=sum((u-umodel).^2)
subplot(3,1,3)
plot(x,w,'*y')
hold on
%calculate leastsquare
W=[ones(length(y),1),x,x.^2,x.^3]
phiw=inv(W'*W)*W'*w
wmodel=W*phiw
subplot(3,1,3)
plot(x,wmodel)
errw=sum((w-wmodel).^2)

The value of errors

erry =

91.1004

erru =

78.4832

errw =

332.0646

The coefficients

3
phiy =

73.6972
-22.8440
9.8543
-1.1932
0.0439

phiu =

52.3224
-19.6893
9.3176
-1.1659
0.0436

phiw =

30.3516
-30.1155
10.1866
-1.2681
0.0518

ymodel = a + a1x + a2x2 + a3x3 + a4x4= 73.6972 –22.8440 x + 9.8543x2 – 1.1932x3 + 0.0439x4
umodel = a + a1x + a2x2 + a3x3 + a4x4= 52.3224 – 19.6893x + 9.3176x2 –1.1659 x3 +0.0518x4
wmodel = a + a1x + a2x2 + a3x3 + a4x4= 30.3516 – 30.1155x+ 10.1866x2 – 1.2681x3+ 0.0349x4

4
Figure

3. Fit the model to the data set and estimate kc by Henrry isotherm model qe = kcCe

Table 2 show the value Ce and qe

Ce 0.09 0.15 0.55 0.35 0.97 1.55 1.78 2.35 3.18


qe 4.18 3.07 1.85 3.75 2.95 1.05 3.89 1.99 1.01

Code
x=[0.09;0.15;0.55;0.35;0.97;1.55;1.78;2.35;3.18]
y=[4.18;3.07;1.85;3.75;2.95;1.05;3.89;1.99;1.01]
figure
plot(x,y,'*b')
hold on
%calculate leastsquare
X=[x]
phi=inv(X'*X)*X'*y
ymodel=X*phi

5
plot(x,ymodel)
err=sum((y-ymodel).^2)
The value of errors

err =

51.9647

The coefficients(ke)

phi =

0.9941

So, The model is qe = 0.9941Ce

Figure

6
7

You might also like