Sei sulla pagina 1di 9

Métodos Cuantitativos en Recursos Naturales

Práctico 6 – Normalización de datos y prueba 2 para tablas de


contingencia

Ejemplo 1: Transformación de datos

El taller anterior vimos las propiedades de la distribución normal y la importancia de


que una cierta variable se distribuya normalmente. Muchas veces uno dispone de
suficientes datos para hacer contraste de hipótesis, pero, aun así, nuestros datos no se
distribuyen normalmente. Esto es esperable dado que en la naturaleza existen variables o
factores que siguen otros comportamientos o distribuciones diferentes a una distribución
normal (exponenciales, logarítmicos, binomiales, etc.). Por lo tanto, si queremos usar
estadística paramétrica (ya que permite hacer inferencias más robustas) con datos que no
se ajustan a una distribución normal, tenemos la alternativa de transformarlos para que
así cumplan el supuesto de normalidad. Veamos el siguiente ejemplo que considera
medidas de turbiedad del mismo río en dos estaciones diferentes (verano e invierno del
mismo año):

> Turbiedad_1 <- c(1.002, 1.203, 1.105, 1.105, 2.401, 2.201,


2.602, 4.101, 5.001, 10.003, 4.000, 4.101, 4.200, 4.101, 5.104,
4.502, 5.000, 15.201, 10.003, 20.004, 1.101, 1.102, 1.201, 1.600,
2.205, 3.006, 4.001, 10.502)
> Turbiedad_2 <- c(1.150, 1.380, 1.261, 1.264, 2.762, 2.533,
2.990, 4.715, 5.750, 11.500, 4.600, 4.715, 4.830, 4.715, 5.865,
5.175, 5.750, 17.480, 11.550, 23.120, 1.265, 1.265, 1.380, 1.840,
2.530, 3.450, 4.600, 12.075)
Ahora grafiquemos nuestros resultados. ¿Se parecen a una curva normal?
> par(mfrow=c(2,1))
>
hist(Turbiedad_1,col="lightgreen",ylab="Probabilidad",xlab="Medida
de Turbiedad",main="Turbiedad Río 1",probability = TRUE)
>
hist(Turbiedad_2,col="lightblue",ylab="Probabilidad",xlab="Medida
de Turbiedad",main="Turbiedad Río 2",probability = TRUE)
¿Y si evaluamos su normalidad con el test de Shapiro-Wilk?
> shapiro.test(Turbiedad_1)
Shapiro-Wilk normality test
data: Turbiedad_1
W = 0.74628, p-value = 1.38e-05
> shapiro.test(Turbiedad_2)
Shapiro-Wilk normality test
data: Turbiedad_2
W = 0.74545, p-value = 1.34e-05
Para ambas mediciones el test de Shapiro-Wilk nos indica que NO son normales. Por
lo tanto, recurriremos a una transformación logarítmica:
> log_tur <- log(Turbiedad_1)
> log_tur_2 <- log(Turbiedad_2)
Grafiquemos nuestros datos transformados:
> par(mfrow=c(2,1))
> hist(log_tur,col="lightgreen",ylab="Probabilidad",xlab="Medida
de Turbiedad",main="Turbiedad Río 1",probability = TRUE)
> hist(log_tur_2,col="lightblue",ylab="Probabilidad",xlab="Medida
de Turbiedad",main="Turbiedad Río 2",probability = TRUE)
A simple vista tienen un parecido a una distribución normal, de todos modos,
comprobémoslo mediante el test de Shapiro-Wilk:
> shapiro.test(log_tur)
Shapiro-Wilk normality test
data: log_tur
W = 0.93384, p-value = 0.07711
> shapiro.test(log_tur_2)
Shapiro-Wilk normality test
data: log_tur_2
W = 0.93388, p-value = 0.07725
Ahora tenemos nuestros datos transformados y sabemos que presentan una
distribución normal, así que podemos evaluar si la turbiedad es mayor en invierno que en
verano, pero, esto lo haremos más adelante, primero ¿entienden por qué al utilizar una
transformación logarítmica nuestros datos adquieren un comportamiento "normal"?

Ejemplo 2: Prueba de 2 o Chi-Cuadrado

La prueba de Chi-cuadrado es un análisis no paramétrico que nos permite evaluar


hipótesis de independencia/asociación entre dos variables categóricas, por ende, toma
mayor importancia en el análisis de tablas de contingencia. Comencemos con el primer
ejemplo en el cual el objetivo es evaluar si existe una asociación entre el color ciertos
tipos de flores y la presencia o ausencia de abejas en ellas. Para esto analizaremos los
datos de la tabla de contingencia que aparece a continuación:

Presencia/Color flor Blancas Rojas Amarillas


Con abejas 45 24 60
Sin abejas 36 83 40

Planteamos las hipótesis a contrastar:


H0: La presencia de abejas es independiente del color de las flores
H1: Existe una asociación entre el color de la flor y la presencia de abejas

Recordemos que para calcular el estadístico Chi-cuadrado debemos utilizar la siguiente


fórmula:
donde O y E corresponde a las cantidades observadas y esperadas respectivamente en
cada categoría. Completaremos la siguiente tabla con los totales y cantidades esperadas
por categoría. En las celdas que indican las cantidades esperadas la primera letra
corresponde al color de la flor y la segunda letra a si tiene (con) o no abejas (sin).

Blancas Rojas Amarillas


Observadas Esperadas Observadas Esperadas Observadas Esperadas Total
Con
45 BC= 24 RC= 60 AC=
abejas
Sin
36 BS= 83 RS= 40 AS=
abejas
Total

En primer lugar, debemos calcular los totales por variable (completar la tabla de abajo). El
total de flores blancas, rojas y amarillas sería (respectivamente):
> 45+36
[1] 81
> 24+83
[1] 107
> 60+40
[1] 100

Ahora debemos calcular el total de flores con y sin abejas, que corresponden a
(respectivamente):
> 45+24+60
[1] 129
> 36+83+40
[1] 159

Luego debemos calcular la cantidad esperada de flores con abejas y sin abejas.
Partiremos con las flores blancas. Para esto debemos primero dividir 129 por 288, que es
la proporción de flores con abejas, y luego multiplicarlo por 81 que representa el total de
flores blancas. Esto significa que si a las abejas no les importa el color de la flor
(independencia) deberían estar en esa proporción en las flores blancas. Esto es:
> Esperadas_BC<-(129/288)*81
> Esperadas_BC
[1] 36.28125

Así se esperarían (159/288)*81 flores blancas sin abejas:


> Esperadas_BS<-(159/288)*81
> Esperadas_BS
[1] 44.71875
De este mismo modo calculamos las cantidades esperadas de flores rojas y blancas con
abejas y sin abejas:
> Esperadas_RC<-(129/288)*107
> Esperadas_RC
[1] 47.92708
>
> Esperadas_RS<-(159/288)*107
> Esperadas_RS
[1] 59.07292
>
> Esperadas_AC<-(129/288)*100
> Esperadas_AC
[1] 44.79167
>

> Esperadas_AS<-(159/288)*100
> Esperadas_AS
[1] 55.20833

Ahora obtener de Chi-cuadrado de acuerdo a la fórmula que planteamos anteriormente.


Para cada categoría calcularemos el cociente entre (O-E)2 y E, y luego estimaremos el
Chi-cuadrado:

Blancas Rojas Amarillas


Con abejas (45 − 36,3)2 (24 − 47,9)2 (60 − 44,8)2
36,3 47,9 44,8
Sin abejas (36 − 44,7)2 (83 − 59,1)2 (40 − 55,2)2
44,7 59,1 55,2

> X2<-((45-36.3)^2/36.3)+((36-44.7)^2/44.7)+((24-
47.9)^2/47.9)+((83-59.1)^2/59.1)+((60-44.8)^2/44.8)+((40-
55.2)^2/55.2)
> X2
[1] 34.71126

Por lo tanto, el valor de Chi-cuadrado para nuestro análisis fue de 34.71 aprox. Como
nosotros necesitamos el valor de significancia de la prueba estadística (el valor-p)
debemos recurrir a la tabla de valores-p de la distribución Chi-cuadrado. El número de
grados de libertad en la prueba de Chi-cuadrado para tablas de contingencia se obtiene
así (n°columnas-1) x (n°filas-1). Según esto, nuestro análisis de X2 posee dos grados de
libertad. Si observamos la tabla de los valores p de la tabla de Chi-cuadrado podemos
observar que el valor crítico de X2 con dos grados de libertad y alpha=0.05 es 5.991.
Como 34.7>>>5.991, rechazamos H0, y determinamos que existe una asociación
significativa entre el color de las flores y la presencia de abejas.
Finalmente, podemos hacer el mismo análisis en R de manera simple. Recordemos que
poseemos una tabla de contingencia. Para analizar esta tabla debemos transformarla de
la siguiente manera:
> Con_abejas <- c(45,24,60)
> Con_abejas
[1] 45 24 60
> Sin_abejas <- c(36,83,40)
> Sin_abejas
[1] 36 83 40
> Presencia <- data.frame(rbind(Con_abejas,Sin_abejas))
rbind():es una función que combina vectores, matrices o marco de datos (data.frame)
combinados por columnas y filas.
> Presencia
X1 X2 X3
Con_abejas 45 24 60
Sin_abejas 36 83 40
> names(Presencia) <- c('Blancas','Rojas','Amarillas')
> Presencia
Blancas Rojas Amarillas
Con_abejas 45 24 60
Sin_abejas 36 83 40

Ahora podemos hacer la prueba de Chi-cuadrado utilizando el comando


chisq.test():

chisq.test(Presencia)

Se aprecia que llegamos al mismo resultado, se rechaza H0 y existe asociación


significativa entre ambas variables. Finalmente, en el barplot podemos observar que las
abejas tienden a estar presentes en las flores blancas y amarillas, y ausentes en las flores
rojas.

> pres<-(as.matrix(Presencia))

>
barplot(pres,beside=TRUE,col=c("black","white"),legend=TRUE,ylab="
Frecuencia")
Ejemplo 3

Tabaco: Este primer ejemplo se basa en el estudio de una Universidad X que encuestó
en el gimnasio de la Facultad de Ciencias a 237 de sus alumnos sobre su actividad física
y adicción al tabaco. Los resultados de esta encuesta se encuentran en el archivo
"Tabaco.csv", carguémoslo en R utilizando el comando file.choose():

> tabaco <- read.csv(file.choose(),header=TRUE,sep=";")


> head(tabaco)
Adiccion Ejercicio
1 Nunca Poco
2 Regularmente Nada
3 Ocasionalmente Nada
4 Nunca Nada
5 Nunca Poco
> dim(tabaco)
[1] 237 2
Recuerden que con el comando table() podemos construir una tabla de
contingencia, así podremos ver las dos variables de interés (Adicción y Ejercicio).
table() usa los factores de clasificación para construir una tabla de contingencia sobre
los conteos en cada combinación de los niveles de los factores. Ahora aplicaremos la
prueba de Chi-cuadrado a nuestra tabla de contingencia.
> tc_tabaco <- table(tabaco$Adiccion,tabaco$Ejercicio)
> tc_tabaco
Frecuentemente Nada Poco
Nunca 87 18 84
Ocasionalmente 12 3 4
Regularmente 9 1 7
Siempre 7 1 3
Por último, siempre es útil (y recomendable) visualizar nuestros datos en un gráfico, en
nuestro caso, dado que son conteos, utilizaremos un histograma:
> par(mfrow=c(1,1), mar=c(5,5,4,6))
> barplot(tc_tabaco, main="Adicción al tabaco y
ejercicio",xlab="Ejercicio semanal",ylab="Número de
estudiantes",col=c("lightgreen","steelblue1","orange","red"),ylim=
c(0,100),beside=TRUE,legend=rownames(tc_tabaco),args.legend =
list(x ='topright', bty='n', inset=c(-0.25,0)))
A partir del gráfico podemos ver que al parecer no existe una asociación entre el
consumo de tabaco y la actividad física que realizan los estudiantes, sin embargo, esta
apreciación visual es mejor evaluarla estadísticamente. Para esto usaremos una prueba
no paramétrica que nos permitirá evaluar si existe una asociación significativa entre dos
variables categóricas (en nuestro caso Adicción y Ejercicio). Otra forma de entenderlo es
si dos variables son independientes entre sí, es decir, que la distribución de probabilidad
de una variable (hacer ejercicio) está influenciada o no por la otra variable (fumar).
Recuerden que la H0 siempre apunta a que no existe una asociación entre ambas
variables, por lo tanto, en el caso de la prueba de Chi-cuadrado la H0 siempre indicará
que las variables son independientes. Por lo tanto:

H0: El nivel de consumo de tabaco es independiente del nivel de actividad física


H1: Existe una asociación entre ambas variables
Ahora hacemos el análisis:
> chisq.test(tc_tabaco)
Pearson's Chi-squared test
data: tc_tabaco
X-squared = 5.4885, df = 6, p-value = 0.4828

Warning message:
In chisq.test(tc_tabaco) : Chi-squared approximation may be
incorrect
El resultado de la prueba de Chi-cuadrado indica un valor de p mayor a 0.05 por lo
tanto no podemos rechazar H0. Luego, podemos afirmar (en base a los resultados) que el
hábito de fumar es independiente del nivel de actividad física de los estudiantes.
Si se fijaron en el resultado obtenido en R, bajo el valor de p, se indica un "Warning",
este aviso se debe a que tenemos algunos factores en nuestra tabla de contingencia con
muy pocos valores. Para remediar esto podemos juntar factores para obtener mayor
tamaño muestral. Lo que haremos será combinar las columnas Nada (de Ejercicio) y Poco
(Ejercicio), y las ingresaremos a un nuevo vector. Para esto utilizaremos el comando
cbind(): el cual toma una secuencia de argumentos de vectores, matrices o marcos de
datos y los combina por columnas o filas, respectivamente.

> tc2_tabaco <- cbind(tc_tabaco[,"Frecuentemente"],


tc_tabaco[,"Nada"] + tc_tabaco[,"Poco"])
> tc2_tabaco
[,1] [,2]
Nunca 87 102
Ocasionalmente 12 7
Regularmente 9 8
Siempre 7 4
Ahora, nuevamente podemos efectuar la prueba de Chi-cuadrado en nuestra nueva
tabla:
> chisq.test(tc2_tabaco)

Pearson's Chi-squared test

data: tc2_tabaco
X-squared = 3.2328, df = 3, p-value = 0.3571
Con la nueva tabla no obtuvimos la señal de advertencia, sin embargo, el resultado es
el mismo, el hábito de fumar es independiente del nivel de actividad física. Sin embargo,
sabemos (por múltiples estudios científicos) que el tabaco sí afecta la actividad física de
las personas, entonces, ¿por qué obtenemos estos resultados? Recuerden, siempre una
posibilidad es que realizamos un muestreo sesgado. Los resultados obtenidos provienen
de 237 personas encuestadas en el gimnasio de la Universidad X, no solo tenemos una
muestra reducida (N=237), sino que también la encuesta se realizó en un lugar donde
probablemente no acuden los fumadores.
Entonces, ahora utilizaremos una nueva base de datos llamada "Tabaco2.csv", este
archivo contiene la misma encuesta, pero esta vez realizada a 1296 estudiantes en
distintos lugares de la Universidad X. Revisemos nuestra nueva base de datos:
> tabaco2 <- read.csv("Tabaco2.csv",header=TRUE,sep=";")
> head(tabaco2)

Adiccion Ejercicio
1 Nunca Poco
2 Regularmente Nada
3 Ocasionalmente Nada
4 Nunca Nada
5 Nunca Poco
6 Nunca Poco
> dim(tabaco2)
[1] 1296 2
Nuevamente creemos una tabla de contingencia:
> tc_tabaco2 <- table(tabaco2$Adiccion,tabaco2$Ejercicio)
> tc_tabaco2
Frecuentemente Nada Poco
Nunca 432 72 336
Ocasionalmente 48 12 16
Regularmente 36 4 28
Siempre 28 156 124

Y como es aconsejable grafiquemos nuestros datos:


> par(mfrow=c(1,1), mar=c(5,5,4,6))
> barplot(tc_tabaco2, main="Adicción al tabaco y
ejercicio",xlab="Ejercicio semanal",ylab="Número de
estudiantes",col=c("lightgreen","steelblue1","orange","red"),legen
d = rownames(tc_tabaco2),args.legend = list(x ='topright',
bty='n', inset=c(-0.25,0)),ylim=c(0,500),beside=TRUE)
En este nuevo gráfico resulta un poco más claro que entre los estudiantes que realizan
Nada o Poco Ejercicio la presencia de fumadores es mayor, ahora comprobemos esta
suposición:

> chisq.test(tc_tabaco2)
Pearson's Chi-squared test
data: tc_tabaco2
X-squared = 332, df = 6, p-value < 2.2e-16
Con estos nuevos datos (una muestra ampliada y representativa) los resultados
cambian rotundamente, en base a lo estimado rechazamos H 0, por tanto, el hábito de
fumar y la actividad física NO son variables independientes. ¿Qué más podrían decir al
respecto de este resultado?
Tarea (Ejercicios).

Comentario: para cada gráfico que genere en estos ejercicios, no olvide indicar las leyendas de
eje y el título principal del gráfico.

1. La siguiente tabla posee datos de preferencia de ciertos sabores de helado de acuerdo al sexo
o género de los individuos. Evalúe si existe una asociación entre el género de los individuos y el
sabor de los helados a través de la prueba de Chi-cuadrado. Para esto, determine el número de
observaciones esperadas dentro de cada categoría generando vectores de acuerdo a los códigos
de la tabla que aparece a continuación. Finalmente exprese el cálculo del estadístico Chi-
cuadrado en base a la fórmula utilizada en el ejemplo 1 y realice el contraste de hipótesis en base
a la tabla de la distribución Chi-cuadrado. Recuerde explicitar las hipótesis a contrastar y
conclusión en base a los resultados.
Chocolate Esperadas Vainilla Esperadas Frutilla Esperadas Total
Mujeres 300 MC= 100 MV= 90 MF=
Hombres 100 HC= 220 HV= 80 HF=
Total

2. Ud. Desea evaluar si existe asociación entre el color del pelaje de una raza X de perros y el
sexo de los ejemplares en base a la siguiente tabla:
Negro Castaño Rubio
Machos 35 50 20
Hembras 54 63 70

¿Cuál es su conclusión? ¿Existe asociación entre ambas variables? Responda en base a la


prueba de Chi-cuadrado (chisq.test()) y de manera gráfica con barplot. Explicite el contraste
de hipótesis y conclusión.

3. Se quiere averiguar si existe alguna relación entre el biotipo de un individuo y la probabilidad de


que tenga alguna lesión gástrica. Para eso se analizó el grupo sanguíneo de individuos sanos
(control), con cancer gástrico y con úlcera gástrica obteniéndose los siguientes resultados:
Biotipo/Patología Cancer Úlcera Control
Ectomórfico 390 985 2893
Mesomórfico 420 675 2624
Endomesomórfico 85 133 575
Endomórfico 24 44 222

Proceda de acuerdo a lo planteado en el ejercicio 2.

4. Evalúe la normalidad de las variables FSIQ, PIQ y VIQ de la tabla IQ.csv. ¿Es posible
normalizar estas variables mediante transformación logarítmica?

Literatura revisada:

Curso de Estadística Universitaria. 2007. Mauricio Canals Lambarri. Facultad de Ciencias,


Universidad de Chile.

Potrebbero piacerti anche