Documentos de Académico
Documentos de Profesional
Documentos de Cultura
MÉTODOS ESTADÍSTICOS.
Ingenierı́a Quı́mica (Curso 2008-09)
Estadı́stica Descriptiva. Práctica 1
>> x=[1;2;3;4;5;6;7;8;9;10];
>> y=[-0.1 ; 2; -3; 0.6; 9; 8.1; -1; 4.3; 7;-3];
>> xmedia=mean(x)
xmedia =
5.5000
>> ymedia=mean(y)
ymedia =
2.3900
xmediana =
5.5000
>>ymediana=median(y)
ymediana =
1.3000
>> xvar=var(x,1)
xvar =
8.2500
>> yvar=var(y,1)
yvar =
18.0349
1
Observese que si en vez del comando var(x,1), escribimos var(x) el resultado ! es 9.1667, que es distinto de
N
var(x,1). De hecho para un vector columna x = (x1 , x2 , . . . , xN ) con media µ = i=1 xi , las dos varianzas se
N N
definen como var(x,1) = N1 2 1 2
! !
i=1 (xi − µ) y var(x) = N −1 i=1 (xi − µ) . La diferencia es que en la primera se
divide por N y en la segunda se divide por N − 1. Esta segunda varianza es ampliamente utilizada.
Para las desviaciones, podemos tomar las raices cuadradas de las varianzas o utilizar directamente el comando
>> xdesv=std(x,1)
xdesv =
2.8723
>> ydesv=std(y,1)
ydesv =
4.2468
Para hallar la covarianza, generamos la matriz de covarianzas que se obtiene con el comando
>> covarianza=cov(x,y,1)
covarianza =
8.2500 1.9850
1.9850 18.0349
coeficiente =
0.1627
Observese que √ covarianza(i,j) es el elemento (i,j) de la matriz covarianza, y por tanto, el coeficiente de
correlacion es b/ ac=covarianza(1,2)/sqrt(covarianza(1,1)*covarianza(2,2)).
Con todos estos datos, se puede obtener la recta de regresion de y sobre x, dada por y − ȳ = byx (x − x̄), donde
byx = sxy /s2x , es decir
>>byx=covarianza(1,2)/covarianza(1,1)
byx =
0.2406
Se puede escribir la recta como y − 2,3900 = 0,2406(x − 5,5000) o equivalentemente y = 0,2406x + 1,0667.
2
2. Mı́nimos Cuadrados
Otra forma de obtener la recta de regresión de Mı́nimos Cuadrados, incluso de obtener curvas que aproximan
a una nube de puntos, es utilizando el comando polyfit(x,y,n), donde n es el grado del polinomio que queremos
obtener. Por lo tanto, para obtener una recta tomamos n = 1:
>> recta=polyfit(x,y,1)
recta =
0.2406 1.0667
>> plot(x,y,’*’)
>> hold on
>> xpol=linspace(1,10,100);
>> ypol=polyval(recta,xpol);
>> plot(xpol,ypol)
y se obtiene la figura
10
−2
−4
1 2 3 4 5 6 7 8 9 10
El error que se comete al aproximar la funcion empı́rica (tabla inicial) por la funcion teorica (recta) se puede
cuantificar de la siguiente forma. Primero calculamos los valores de la recta y = ax + b en los puntos xi :
>>fxi=polyval(recta,x)
fxi =
1.3073 1.5479 1.7885 2.0291 2.2697 2.5103 2.7509 2.9915 3.2321 3.4727
Y ahora calculamos el Error Cuadrático Medio, que viene dado por la expresion:
"
# n
#1 %
ε=$ (axi + b − yi )2
n i=1
Para calcularlo:
3
>>n=length(x) % calcula el n’umero de t’erminos
n =
10
>>errorcm=sqrt(sum((fxi-y).^2)/n)
errorcm =
4.1901
3. Ejercicios
Ejercicio 1 Resolver los ejercicios de la Hoja 2 de problemas utilizando Matlab.
Ejercicio 2 Mediante el Método de Mı́nimos Cuadrados, elegir una funcion cuadrática del tipo
f (x) = ax2 + bx + c
para los valores de x e y dados por la siguiente tabla
x 7 8 9 10 11 12 13
y 7,4 8,4 9,1 9,4 9,5 9,5 9,4
Calcular la funcion f (x), el error, el error cuadrático medio y representar la funcion obtenida junto a los datos
de la tabla.
Calcular esta funcion. Habrá que hacer una nueva tabla de valores con las nuevas variables.
c) Deshacer el cambio de variable y obtener la funcion original y representarla con los valores del apartado a).
Ejercicio 4 La tabla siguiente contiene la presion p en kp/cm2 de un vapor saturado, en funcion del volumen
especı́fico, v, medido en m3 /kp:
Ejercicio 5 Hallar por el Método de Mı́nimos Cuadrados una funcion del tipo S = Atq para los datos de la
siguiente tabla. Representarla junto a los datos de la tabla:
t 1 2 3 4 5
S 7,1 27,8 62,1 110 161
(Indicacion: Tomar logaritmos neperianos en la funcion para transformarla en una funcion de tipo lineal).
4
El comando rand(M,N) genera una matriz de M filas y N columnas en donde cada entrada es un numero
aleatorio entre 0 y 1, según una distribucion uniforme. Si se desea elegir los numeros segun una distribucion normal
standard, se escribe randn(M,N)
Ejercicio 6 Repetir lo realizado en las secciones 1 y 2 cuando x e y son dos vectores columna de 100 filas y
numeros aleatorios siguiendo a) una distribucion uniforme, b) una distribucion normal standard.
Ejercicio 7 Repetir el ejercicio anterior con los vectores x e y, donde x = (1, 2, 3, . . . , 30)T , e y = x+randn(30, 1).
Ejercicio 8 Explorar lo que hace el comando hist, siguiendo los siguientes pasos:
>> x=randn(200,1);
>> N=hist(x)
>> hist(x)
>> M=hist(x, 25)
>> hist(x,25)