CAP VIII VA_Prueba de Ajuste
-
Upload
eddy-llanos -
Category
Documents
-
view
214 -
download
0
Transcript of CAP VIII VA_Prueba de Ajuste
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
1/15
Ing. Alcides Ramos Calcina
E.P. DE INGENIERA METALURGICAPROGRAMACIN Y SIMULACIN DE PROCESOS METALRGICOS
GENERACIN DE VARIABLES ALEATORIASPRUEBAS DE BONDAD DE AJUSTE
INTRODUCCIN
Las pruebas de bondad de ajuste consisten en comprobar grficamente y
estadsticamente si la frecuencia emprica de la serie analizada se ajusta a una
determinada funcin de probabilidad terica seleccionada a priori, con los parmetros
estimados en base a los valores muestrales.
Las pruebas estadsticas, tienen por objeto medir la certidumbre que se obtiene al hacer
una hiptesis estadstica sobre una poblacin, es decir, califica el hecho de suponer que
una variable aleatoria se distribuya segn una cierta funcin de probabilidades.
Las pruebas que se consideran son:
Ajuste grfico
Ajuste estadstico: Ji-cuadrado de K. Pearson
Kolmogorov Smirnov.
La prueba Ji cuadrado conviene tanto para distribuciones continuas como para discretas,
mientras que la prueba Kolmogorov-Smirnov slo sirve para distribuciones continuas.
1.1. Ajuste Grfico
El ajuste grfico se puede realizar comparando grficamente el histograma ofuncin de densidad emprica de la serie de datos, con funcin densidad terica y
decidir visualmente, si hay o no ajuste de acuerdo a la similitud o diferencia de
ambos; as mismo, podemos comparar la funcin acumulada con la funcin
acumulada terica seleccionada.
Ejemplo 1:
Da la serie histrica de caudales medios anuales en m3/s, que corresponde a un
registro de 38 aos.
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
2/15
Ing. Alcides Ramos Calcina
121,3 26,7 110,1 63,4 162,1 144,7 137,1
144,9 92,8 95,6 76,3 97,2 109,2 32,9
142,4 58,8 48,8 52,3 52,5 48,5
205,8 57,4 148,3 36,3 165,6 59,6
114,5 79,0 67,5 88,0 64,2 40,372,5 76,9 70,0 122,4 110,2 112,2
Realice la prueba de bondad de ajuste grafico para ver si los datos se ajustan a una
distribucin normal.
Matlab
Primeramente, ingresamos la serie de datos en Excel (en una columna, solamente
datos sin rotulo) y almacnela con formato tipo texto delimitado con tabulaciones.
Elija algn nombre. Por ejemplo datos.txt
En la ventana de comandos de Matlab cargue el archivo datos.txty sela como un
vector:
>> load datos.txt
Realizamos el histograma (grfico 1) para la serie histrica de caudales:
>> hist(datos)
>> title('HISTOGRAMA DE LA SERIE HISTRICA')
Grfico 1:Histograma.
0 50 100 150 200 2500
1
2
3
4
5
6
7
8HISTOGRAMA DE LA SERIE HISTRICA
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
3/15
Ing. Alcides Ramos Calcina
Por lo cual establecemos la siguiente hiptesis:
Ho: La serie se ajusta a una distribucin Normal
H1: Otra distribucin
Ahora ejecutamos el m-ficheroque grafica la funcin de densidad y acumulada.
>> ajus_g(datos)
ajus_g.m
%AJUSTE GRAFICO A UNA NORMALfunction ajus_g(y)mu=mean(y);sig=sqrt(var(y));
xord=sort(y);%Funcion de probabilidad PDFx=[-4:0.211:4];y2=normpdf(x); %PDF tericoz=(xord-mu)/sig; %Estadarizacin de la seriey1=(1/sqrt(2*pi))*exp(-(z.^2)/2); %PDF empiricosubplot(2,1,1); plot(x,y2,'-.',z,y1,'-+');legend({'Distr. Terica' 'Distr. Emprica'},1)title('DISTRIBUCIN DENSIDAD NORMAL TEORICA VS EMPIRICA')
xlabel('X')ylabel('f(x)')%Funcion de distribucin CDFy3=normcdf(x); % CDF tericoy4=normcdf(z); % CDF empiricosubplot(2,1,2); plot(x,y3,'-.',z,y4,'-+');legend({'Distr. Terica' 'Distr. Emprica'},2)title('DISTRIBUCIN ACUMULADA NORMAL TEORICA VSEMPIRICA')
xlabel('X')ylabel('F(x)')
Nos muestra los siguientes grficos:
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
4/15
Ing. Alcides Ramos Calcina
Grfico 2:Ajuste grfico de la funcion densidad y distribucin.
Tambin podemos realizar directamente un grfico de normalidad a la serie de
datos con la siguiente funcin en MatLab:
>> normplot(datos);
-4 -3 -2 -1 0 1 2 3 40
0.1
0.2
0.3
0.4
X
f(x)
DISTRIBUCIN DENSIDAD NORMAL TEORICA VS EMPIRICA
Distr. Terica
Distr. Emprica
-4 -3 -2 -1 0 1 2 3 40
0.2
0.4
0.6
0.8
1
X
F(x)
DISTRIBUCIN ACUMULADA NORMAL TEORICA VS EMPIRICA
Distr. Terica
Distr. Emprica
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
5/15
Ing. Alcides Ramos Calcina
Grfico 3:Ajuste de probabilidad normal.
Finalmente realizaremos un grfico de un histograma con campana de Gauss para
la serie de datos.
>> histfit(datos);
>> title('HISTOGRAMA CON CURVA NORMAL');
Grfico 4.
50 100 150 200
0.010.02
0.05
0.10
0.25
0.50
0.75
0.90
0.95
0.980.99
Data
Probability
Normal Probability Plot
-50 0 50 100 150 200 2500
2
4
6
8
10
12HISTOGRAMA CON CURVA NORMAL
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
6/15
Ing. Alcides Ramos Calcina
Evidentemente se puede observar que los grficos de distribucin densidad y
acumulada empricos se ajustan a los grficos de las distribuciones tericas; al
igual que en el grfico de normalidad los datos se ajustan a la diagonal y por ltimo
en la grfica del histograma con la curva normal, tambin se observa un ajuste a
la normal, por lo tanto, podemos concluir que la serie de datos se ajusta a una
distribucin normal.
1.2. Ajuste Estadstico
a) Prueba Chi-cuadrado ( 2 )
La prueba de ji-cuadrado es la ms comnmente utilizada para verificar la bondad
de ajuste de la distribucin emprica a una distribucin terica conocida y se basa
en el clculo de las frecuencias, tanto de valores observados, como valoresesperados, para un nmero determinado de intervalos. Esta prueba fue propuesta
por Kart Pearson en 1900.
La expresin general de la prueba Ji-cuadrado se escribe como:
2k2 i ic
i 1 i
( e )x
e
(1)
Donde:
k k
i i
i 1 i 1
e n
, i = 1, 2, 3, , k
2
cx : valor calculado de ji-cuadrado de los datos
i : nmero de valores observados en el intervalo de clase iei : nmero de valores esperados del intervalo i
n : nmero total de observaciones de la muestra
k : nmero de intervalos de clase en que ha sido agrupada la muestra
Asignando probabilidades a la ecuacin (1); vale decir, asignando igual
probabilidad de ocurrencia a cada intervalo de clase, se tiene que:
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
7/15
Ing. Alcides Ramos Calcina
2k2 i ic
i 1 i
(n np )x
np
(2)
Donde:
ni: nmero de observaciones que caen dentro de los lmites de clases ajustados
de intervalo i.n : tamao de muestra
pi : probabilidad igual para todos los intervalos de clase
i i i
1p , e n.p
k
Procedimiento de clculo
El procedimiento seguido para comprobar la bondad de ajuste mediante la prueba
Ji-cuadrado es:
a) Planteamiento de Hiptesis
H0: i= ei(frecuencia observada es igual a las esperadas)Ha: iei(frecuencia observada es diferente a las esperadas)
b)
Seleccionar el nivel de significancia:= 0.05.
c) Calcular el valor de Ji-cuadrado calculado (2
cx ) utilizando las ecuaciones (1)
(2), las cuales estn implementadas en una funcin de Matlab del siguiente
modo:
La funcin CHI2GOFrealiza la prueba chi-cuadrado de bondad de ajuste paradistribuciones discretas o continuas.
Si en el resultado H = 0, nos indica que la hiptesis nula (que X es una muestra
aleatoria de una distribucin normal) no puede ser rechazada al nivel de
significacin del 5%, y si H = 1, nos indica que la hiptesis nula puede ser
rechazada al nivel del 5%.
Tambin devuelve el valor de P. Que es el valor de probabilidad (p-value)
asociado al estadstico.
Y la estructura STATS devuelve los siguientes campos:
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
8/15
Ing. Alcides Ramos Calcina
chi2stat: Estadstico Chi-cuadrado
df: Grados de libertad
edges: Vector de intervalos
O: Valores observados en cada intervalo
E: Valores esperados en cada intervalo
d)
Determinar el valor de Ji-cuadrado de la tabla (2
tx ) con:
: 0.05g.l. : k-1-h
donde:
g.l. : grados de libertad
k : nmero de intervalos de claseh : nmero de parmetros a estimar
as h = 2, para distribucin normal
h = 3, para la distribucin log-normal de 3 parmetros
e) Criterio de decisin
El criterio de decisin se fundamenta en la compasin del valor calculado de
ji-cuadrado con el valor tabular encontrado, esto es:
-
Si2
cx 2
tx , se acepta la hiptesis de que los datos se ajustan a la
distribucin elegida.
- Si2
cx >2
tx , se rechaza la hiptesis de que los datos se ajustan a la
distribucin elegida, por lo tanto, es necesario probar con otra distribucin
terica.
Ventajas y Limitaciones
a) Es aplicable slo para ajustes a la distribucin normal, puesto que ha sido
desarrollado en base a datos normales e independientes.
b) Es realizada en la funcin densidad de datos agrupados en intervalos de
clases.
c) Requiere un conocimiento a priori de la funcin de distribucin terica
utilizada en el ajuste.
d) En la prctica se usa para cualquier modelo de ajuste, pero estrictamente
es vlido solo para la normal.e) Es de fcil aplicacin
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
9/15
Ing. Alcides Ramos Calcina
Ejemplo 2:
Vamos a generar un vector X de 100 variables uniformes independientemente
distribuidas al azar en el intervalo [0, 1].
>> X=rand(100,1);
El parmetro (100, 1) significa que generamos una matriz 1001 de variables
aleatorias uniformes.
Vamos a probar si el vector X proviene de la distribucin U[0,1] usando la prueba
de bondad de ajuste implementada en Matlab:
>> [H,P,STATS]=chi2gof(X,'cdf',@(z)unifcdf(z,0,1),'edges',0:0.2:1)
H =
0
P =
0.8614
STATS =
chi2stat: 1.3000
df: 4
edges: [0 0.2000 0.4000 0.6000 0.8000 1]
O: [20 18 17 22 23]
E: [20 20 20.0000 20.0000 20.0000]
De acuerdo a los resultados, aceptamos la hiptesis nula H0:X= U[0,1] teniendo
por defecto el nivel de significancia = 0.05 ya que el valor de p = 0.8614 esmayor que . El Parmetro 'cdf' hace uso de @ especificando completamente ac.d.f.
Por ejemplo, para comprobar si los datos provienen deN(3, 5) usaramos:
@(z)normcdf(z,3,5)
o para probar la distribucin de Poisson Poi(=4) se usara:
@(z)poisscdf(z,4)
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
10/15
Ing. Alcides Ramos Calcina
Ejemplo 3:
Un estudio del comportamiento del tiempo entre roturas de cierto filamento,
medido en minutos/rotura, se muestra a continuacin:
4.33 1.61 2.16 2.88 0.70 0.44 1.59 2.15 8.59 7.369.97 7.86 5.49 0.98 4.52 2.12 4.44 0.82 6.69 3.04
2.81 14.39 3.44 9.92 4.38 8.04 2.18 6.19 4.48 9.66
4.34 1.76 2.30 5.24 11.65 10.92 12.16 6.60 0.85 4.82
1.36 3.53 6.58 1.45 8.42 3.69 2.44 0.28 1.90 2.89
Haciendo uso de la funcin chi2gof, realice la prueba de chi-cuadradocon un nivel
de significancia del 5% ( = 0.05) para saber si los datos se ajustan a unadistribucin normal.
Planteamos la siguiente hiptesis para la variable X: tiempo entre roturas.
Ho: XN(, 2)Ha: X no es normal
Antes de realizar la prueba, se procede los siguientes clculos:
>> load tiempo.txt>> R=max(tiempo)-min(tiempo)
R =
14.1100
>> K=1+3.3*log10(length(tiempo))
K =
6.6066
>> C=R/7
C =
2.0157
Ahora realizamos la prueba, sabiendo que el valor mximo y mnimos son 14.39
y 0.28 respectivamente con un ancho de clase C = 2.016.
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
11/15
Ing. Alcides Ramos Calcina
>> [H,P,STATS]=chi2gof(tiempo,'cdf',@(z)normcdf(z,mu,sig),
'edges', 0.28:2.016:14.4)
H =
0
P =
0.6125
STATS =
chi2stat: 2.6810
df: 4
edges: [0.2800 2.2960 4.3120 6.3280 8.3440 14.3920]
O: [16 9 10 6 9]E: [12.1447 10.4817 11.2082 8.6628 7.5025]
De los resultados observamos que el valor de probabilidad asociado al estadstico
Chi-cuadrado P = 0.6125 > = 0.05, por tanto, se acepta la hiptesis nula Ho. Esdecir, los datos se ajustan a la distribucin normal, con un nivel de significancia
de 5% de probabilidad.
b) Prueba De Kolmogorov-Smirnov (Ks)
La prueba de ajuste de Kolmogorov-Smirnov consiste en comparar las diferencias
existentes entre la probabilidad de los datos agrupados y la probabilidad ajustada,
tomando la distancia ms grande entre el valor observado y la recta del modelo,
vale decir:
mx F(x) P(x) (3)
Donde:
: es el estadstico de Kolmogorov-Smirnov, cuyo valor es igual a ladiferencia mxima existente entre la probabilidad ajustada y la
probabilidad emprica.
F(x) : probabilidad de la distribucin de ajuste.
P(x) : probabilidad de los datos no agrupados, denominado tambin
frecuencia acumulada.
El estadstico tiene una distribucin muestral. Si 0es un valor crtico para unvalor seleccionado, se tiene que:
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
12/15
Ing. Alcides Ramos Calcina
0 0P mx F(x) P(x) P( ) (4)
Tambin:
0P( ) 1 (5)
Ventajas y limitaciones
a)
No requiere un conocimiento a priori de la funcin de distribucin terica.
b)
Es aplicable a distribuciones de datos no agrupados, vale decir no se requiere
hacer intervalos de clase.
c)
Es aplicable a cualquier distribucin terica.
d)
Se aplica en la funcin de distribucin acumulada y no en la funcin de
densidad.
e)
Comparndola con la prueba Ji-cuadrado, no requiere que la frecuenciaabsoluta de cada clase, sea igual o mayor que 5.
f)
No es una prueba exacta, sino una prueba aproximada.
Ajuste con Matlab
H = kstest (x)lleva a cabo la prueba de Kolmogorov-Smirnov para comparar
si los valores en el vector de datos X tienen distribucin normal estndar u otra
distribucin.
Ejemplo 5:
Se tiene el comportamiento del tiempo entre roturas de cierto filamento del Ejemplo
3. Realice la prueba de bondad de ajuste de Kolmogorov-Smirnov, para ver si la
serie se ajusta a una distribucin normal.
Planteamos la siguiente hiptesis:
Ho: XN(, 2)Ha: X no es normal
Haciendo uso de la funcin kstest, realice la prueba de bondad de ajuste de losdatos del ejercicio 3.28.
Previamente debe cargarse el archivo tiempo.txt.
>> load tiempo.txt
>> mu=mean(tiempo);>> sig=std(tiempo);
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
13/15
Ing. Alcides Ramos Calcina
>> CDFt=normcdf(tiempo,mu,sig);
A continuacin, realizamos la prueba KS, para lo cual en la ventana de comandos
escribimos:
>> [H,P,KSSTAT,CV]=kstest(tiempo,[tiempo,CDFt],0.05)
H =
0
P =
0.2294
KSSTAT =
0.1438
CV =
0.1884
Aceptamos H0ya que el valor de probabilidad asociado al estadstico KS (p-value)
P = 0.2294 > = 0.05. CV es el valor crtico, de tal manera que se rechaza H0siKSSTAT > CV; en nuestro caso KSSTAT < CV, es decir, los datos distribuyen
normalmente.
Ejemplo 6:
Dada la serie histrica de caudales medios anuales en m3/s, que corresponden a un
registro de 50 aos para el ro Santa (Per).
95,05 108,75 132,49 158,48 193,78
98,13 110,77 134,1 162,29 193,88
100,18 114,31 136,22 164,35 197,58101,66 116,69 144,22 169,18 207,78
101,76 119,52 145,79 169,64 208,18
105,21 123 146,08 177 212,48
105,81 123,22 153,64 182,53 217,52
106,4 124,31 153,97 183,11 239,07
107,43 127,82 154,8 183,49 256,62
107,62 128,15 156,8 184,98 266,54
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
14/15
Ing. Alcides Ramos Calcina
Averiguar si los datos se ajustan a una distribucin log-normal de 2 parmetros,
haciendo uso del comando kstest
Creamos el archivo archivo caudal.txt,como se hizo anteriormente y lo cargamos
a travs de:
>> load caudal.txt
>> y=caudal;
Ahora realizamos la prueba KS, para lo cual, en la ventana de comandos
previamente calculamos:
>> ly=log(y);
>> mu=mean(ly);
>> sig=std(ly);>> CDFly=logncdf(y,mu,sig);
Luego,
>> [H,P,KSSTAT,CV]=kstest(y,[y,CDFly],0.05)
H =
0
P =
0.8248
KSSTAT =
0.0858
CV =
0.1884
Para graficar, la distribucin terica F(x) frente a la emperica P(x), realizamos lo
siguiente:
>> m=[1:n]';
>> Px=(m./(n+1)); %Distribucin emprica
>> h=plot(m,Px,m,CDFly,'-+');
>> legend({'P(x)' 'CDFly'},2)
>> title('AJUSTE K-S: LOG-NORMAL 2P')
>> grid on
-
7/23/2019 CAP VIII VA_Prueba de Ajuste
15/15
Ing. Alcides Ramos Calcina
Grfico 5.
El valor del estadstico Dt = 0.1884 (Valor critico o Delta tabulado, para un valor
de N = 50 y nivel de significancia 0.05.
Como Dc= 0.0858 < Dt= 0.1884, se acepta la hiptesis nula Ho. Por lo tanto, los
datos se ajustan a la distribucin log normal de 2 parmetros, con un nivel de
significancia del 5%, lo que se puede corroborar con el grafico 4.9.
0 5 10 15 20 25 30 35 40 45 500
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1AJUSTE K-S: LOG-NORMAL 2P
P(x)
CDFly