Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
PROBLEMAS RESUELTOS
PROBLEMA 1. Emplee la regresión por mı́nimos cuadrados para ajustar una lı́nea recta a
x 1 2 3 4 5 6 7 8 9
y 1 1.5 2 3 4 5 8 10 13
(a) Además de la pendiente y la intersección, calcule la desviación estándar de la estimación y el coeficiente
de correlación. Grafique los datos y la lı́nea recta. Evalúe el ajuste.
(b) Vuelva a hacer el cálculo del inciso a), pero use regresión polinomial para ajustar una parábola a los
datos. Compare los resultados con los del inciso (a).
SOLUCIÓN:
(a) Introducimos los datos en MATLAB y formamos la matriz X usando los valores de la tabla de la variable
independiente x.
% Introducimos los datos de la tabla
>> x = [1 2 3 4 5 6 7 8 9];
>> y = [1 1.5 2 3 4 5 8 10 13];
% Creamos restantes datos de la tabla de los valores
prod = x.*y; cuadr = x.ˆ2;
% Buscamos las sumas
sum x = sum(x); sum y = sum(y); sum prod = sum(prod); sum cuadr = sum(cuadr);
Los datos obtenidos ordenamos en la tabla
n xi yi xi yi x2i
1 1 1 1 1
2 2 1.5 3 4
3 3 2 6 9
4 4 3 12 16
5 5 4 20 25
6 6 5 30 36
7 7 8 56 49
8 8 10 80 64
9
P 9 13 117 81
45 47.5 325 285
% Creamos la matriz A y el vector b
n = 9; A = [sum x n; sum cuadr sum x]; b = [sum y; sum prod];
% Resolvemos el sistema de ecuaciones para a1 y a0
a = Aˆ−1*b
a =
1.4583
−2.0139
Por lo tanto, la intersección es a0 = −2.0139 y la pendiente es a1 = 1.4583. La ecuación de la lı́nea
recta es y = 1.4583x−2.0139. Ahora calculamos la desviación estándar y error estándar de la estimación
y el coeficiente de correlación.
Marı́a Penkova Vassileva, PhD 1
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
>> St = sum((y−mean(y)).ˆ2) % cuadrado del residual
St =
139.5556
% suma de los cuadrados de la diferencia entre los valores de y y los y estimados
yapr = a(1)*x + a(2);
Sr = sum((y' − yapr').ˆ2)
Sr =
11.9514
% desviacion estandar
n = 9; sqrt(St/(n − 1))
ans =
4.1767
% error estandar
sqrt(Sr/(n − 2))
ans =
1.3067
% coeficiente de determinacion
r2 = (St − Sr)/St
r2 =
0.9144
% coeficiente de correlacion
r = sqrt(r2)
r =
0.9562
Graficamos los datos y la lı́nea de ajuste lineal.
>> plot(x,y,'o',x,yapr),grid
14
y
y = b1*x + b0
12
10
6
y
−2
1 2 3 4 5 6 7 8 9
x
Debido de que el error estándar es menor que la desviación estándar, el modelo de regresión lineal tiene
mérito. La medida de la mejora se cuantifica por el coeficiente de correlación que es = 0.9562 (cerca
de 1) el ajuste lineal es un buen ajuste para estos datos.
(b) Seguimos los mismos pasos que en el inciso (a) para encontrar el vector a = [a2 , a1 , a0 ]T .
Marı́a Penkova Vassileva, PhD 2
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
% Introducimos los datos de la tabla
>> x = [1 2 3 4 5 6 7 8 9];
>> y = [1 1.5 2 3 4 5 8 10 13];
% Creamos restantes datos de la tabla de los valores
prod = x.*y; cuadr = x.ˆ2; cub = x.ˆ3; quar = x.ˆ4; prod2 = (x.ˆ2).*y;
% Buscamos las sumas
sum x = sum(x); sum y = sum(y); sum prod = sum(prod); sum cuadr = sum(cuadr);
sum cub = sum(cub); sum quar = sum(quar); sum prod2 = sum(prod2);
Los datos obtenidos ordenamos en la tabla
n xi yi xi y i x2i x3i x4i x2i yi
1 1 1 1 1 1 1 1
2 2 1.5 3 4 8 16 6
3 3 2 6 9 27 81 18
4 4 3 12 16 64 256 48
5 5 4 20 25 125 625 100
6 6 5 30 36 216 1296 180
7 7 8 56 49 343 2401 392
8 8 10 80 64 512 4096 640
9
P 9 13 117 81 729 6561 1053
45 47.5 325 285 2025 15333 2438
% Creamos la matriz A y el vector b
n = 9;
A = [sum cuadr sum x n; sum cub sum cuadr sum x; sum quar sum cub sum cuadr];
b = [sum y; sum prod; sum prod2];
% Resolvemos el sistema de ecuaciones para a1 y a0
a = Aˆ−1*b
a =
0.1910
−0.4518
1.4881
La ecuación de la parábola es y = 0.1910x2 −0.4518x+1.4881. Ahora calculamos la desviación estándar
y error estándar de la estimación y el coeficiente de correlación.
>> St = sum((y−mean(y)).ˆ2) % cuadrado del residual
St =
139.5556
% suma de los cuadrados de la diferencia entre los valores de y y los y estimados
yapr = a(1)*x.ˆ2 + a(2)*x + a(3);
Sr = sum((y' − yapr').ˆ2)
Sr =
0.7132
% desviacion estandar
n = 9; sqrt(St/(n − 1))
ans =
4.1767
% error estandar
sqrt(Sr/(n − 2))
ans =
0.3192
Marı́a Penkova Vassileva, PhD 3
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
% coeficiente de determinacion
r2 = (St − Sr)/St
r2 =
0.9949
% coeficiente de correlacion
r = sqrt(r2)
r =
0.9974
La medida de la mejora se cuantifica por el coeficiente de correlación que es = 0.9974 (muy cerca de
1). Por lo tanto el ajuste con una parábola es casi perfecto para estos datos. Podemos graficar los datos
y la parábola.
plot(x,y,'o',x,yapr),grid
14
datos
parabola
12
10
8
y
0
1 2 3 4 5 6 7 8 9
Comparando los resultados obtenidos con los del inciso (a) vemos que el error estándar ha disminuido
y el ha mejorado el coeficiente de correlación acercándose más a 1.
PROBLEMA 2. Ajuste los datos siguientes
x 0.75 2 3 4 6 8 8.5
y 1.2 1.95 2 2.4 2.4 2.7 2.6
usando
(a) un modelo de tasa de crecimiento de saturación,
(b) una ecuación de potencias, y
(c) una parábola.
En cada caso, haga una gráfica de los datos y la ecuación.
SOLUCIÓN:
αx
(a) El modelo de tasa de crecimiento de saturación se representa por la función y = donde α y
β+x
β son coeficientes constantes. Este modelo particularmente es adecuado para caracterizar la razón de
Marı́a Penkova Vassileva, PhD 4
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
crecimiento poblacional bajo ciertas condiciones, también representa una relación no lineal entre y y x
que se iguala o ”satura”, conforme x aumenta.
Transformamos la función
1 β+x β1 1 β 1
= = + ⇒ y1 = x1 + = a1 x1 + a0
y αx αx α α α
donde x1 = 1/x, y1 = 1/y, a0 = 1/α y a1 = β/α.
x = [0.75 2 3 4 6 8 8.5];
y = [1.2 1.95 2 2.4 2.4 2.7 2.6];
sum(x), sum(y)
x1 = 1./x; y1 = 1./y;
prod = x1.*y1, cuadr = x1.ˆ2
sum x1 = sum(x1) , sum y1 = sum(y1), sum prod = sum(prod) , sum cuadr = sum(cuadr)
A = [sum x1 n; sum cuadr sum x1] , b = [sum y1; sum prod], a = Aˆ−1*b
alpha = 1/a(2), beta = a(2)/a(1)
% Funcion del modelo de tasa de crecimiento de saturacion
yapr = alpha*x./(beta + x)
St = sum((y − mean(y)).ˆ2), Sr = sum((y' − yapr').ˆ2)
n = 7;
Sx = sqrt(St/(n−1)), Syx = sqrt(Sr/(n−2))
r2 = (St − Sr)/St, r = sqrt(r2)
plot(x,y,'o',x,yapr), grid
Mostramos los datos obtenidos en una tabla
n xi yi Xi = 1/xi Yi = 1/yi X i Yi Xi2
1 0.75 1.2 1.3333 0.8333 1.1111 1.7778
2 2 1.95 0.5000 0.5128 0.2564 0.2500
3 3 2 0.3333 0.5000 0.1667 0.1111
4 4 2.4 0.2500 0.4167 0.1014 0.0625
5 6 2.4 0.1667 0.4167 0.0694 0.0278
6 8 2.7 0.1250 0.3704 0.0463 0.0156
7
P 8.5 2.6 0.1176 0.3846 0.0452 0.0138
32.2500 15.2500 2.8260 3.4345 1.7993 2.2586
El sistema que se ha resuelto está compuesta por los siguientes dos ecuaciones: 2.8260a1 + 7.0000a0 =
3.4345 y 2.2586a1 + 2.8260a0 = 1.7993. Su solución nos da los elementos del vector a: a1 = 0.3693
y a0 = 0.3415. Luego se calculan los valores de los coeficientes α y β de la función que representa el
modelo de tasa de crecimiento de saturación: α = 1/a0 = 2.9279 y β = a1 /a0 = 0.9248. Por lo tanto
2.9279x
la función del modelo de tasa de crecimiento de saturación es y = . Luego, st = 1.5893,
1.0813 + x
sr = 0.0983, sx = 0.5147, sx/y = 0.1402. El coeficiente de correlación es r = 0.9686.
Marı́a Penkova Vassileva, PhD 5
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
Ecuación del modelos de crecimiento de saturación
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0 1 2 3 4 5 6 7 8 9
(b) La función del modelo de potencia es y = αxβ . Transformamos la función:
y = αxβ ⇒ log y = log α + β log x ⇒ y 1 = b 1 x 1 + b0
donde b0 = log α y b1 = β. Usando el mismo procedimiento
x = [0.75 2 3 4 6 8 8.5];
y = [1.2 1.95 2 2.4 2.4 2.7 2.6];
sum(x), sum(y)
x1 = log10(x), y1 = log10(y)
prod = x1.*y1, cuadr = x1.ˆ2
sum x1 = sum(x1), sum y1 = sum(y1)
sum prod = sum(prod), sum cuadr = sum(cuadr)
A = [sum x1 n; sum cuadr sum x1], b = [sum y1; sum prod]
a = Aˆ−1*b
alpha = 10ˆa(2), beta = a(1)
yapr = alpha*x.ˆbeta
St = sum((y − mean(y)).ˆ2), Sr = sum((y' − yapr').ˆ2)
n = 7;
Sx = sqrt(St/(n−1)), Syx = sqrt(Sr/(n−2))
r2 = (St − Sr)/St, r = sqrt(r2)
plot(x,y,'o',x,yapr), grid
obtenemos la siguiente tabla:
Marı́a Penkova Vassileva, PhD 6
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
n xi yi Xi = log10 xi Yi = log10 yi Xi Yi Xi2
1 0.75 1.2 -0.1249 0.0792 -0.0099 0.0156
2 2 1.95 0.3010 0.2900 0.0873 0.0906
3 3 2 0.4771 0.3010 0.1436 0.2276
4 4 2.4 0.6021 0.3802 0.2289 0.3625
5 6 2.4 0.7782 0.3802 0.2959 0.6055
6 8 2.7 0.9031 0.4314 0.3896 0.8156
7
P 8.5 2.6 0.9294 0.4150 0.3857 0.8638
32.2500 15.2500 3.8659 2.2770 1.5211 2.9813
Se obtienen los valores a1 = 0.3114. a0 = 0.1533. Por lo tanto, α = 10a0 = 1.4233 y β = a1 = 0.3114.
Luego, la función del modelo de potencia tiene la forma y = 1.4323x0 .3114.
Ecuación del modelo de potencias
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0 1 2 3 4 5 6 7 8 9
(c) La función de una parábola es y = a2 x2 +a1 x+a0 . Buscamos los componentes del vector a = [a2 , a1 , a0 ].
Usamos el procedimiento dado en el material de lectura del Tema 2.2
x = [0.75 2 3 4 6 8 8.5];
y = [1.2 1.95 2 2.4 2.4 2.7 2.6];
prod = x.*y; cuadr = x.ˆ2; cub = x.ˆ3; quar = x.ˆ4; prod2 = (x.ˆ2).*y;
sum x = sum(x); sum y = sum(y); sum prod = sum(prod); sum cuadr = sum(cuadr);
sum cub = sum(cub); sum quar = sum(quar); sum prod2 = sum(prod2);
n = 7;
A = [sum cuadr sum x n; sum cub sum cuadr sum x; sum quar sum cub sum cuadr];
b = [sum y; sum prod; sum prod2]; a = Aˆ−1*b
yapr = a(1)*x.ˆ2 + a(2)*x + a(3);
St = sum((y − mean(y)).ˆ2), Sr = sum((y' − yapr').ˆ2)
sqrt(St/(n−2)), sqrt(Sr/(n−3))
r2 = (St − Sr)/St, r = sqrt(r2)
plot(x,y,'o',x,yapr), grid
Por lo tanto la función del modelo de parábola es y = −0.0307x2 + 0.4499x + 0.9907.
Marı́a Penkova Vassileva, PhD 7
Instituto Tecnológico de Santo Domingo Área de Ciencias Básicas y Ambientales
Ecuación de parábola
2.6
2.4
2.2
1.8
1.6
1.4
1.2
0 1 2 3 4 5 6 7 8 9
Marı́a Penkova Vassileva, PhD 8