Práctica 3. Estadística Descriptiva Gráfica

Introducción

Una vez que tenemos nuestros datos limpios y ordenados, el siguiente paso es explorarlos. La estadística descriptiva nos permite resumir y presentar las características más importantes de un conjunto de datos. Mientras que las tablas nos dan los números exactos, los gráficos nos cuentan la historia de nuestros datos de una manera visual e intuitiva.

En esta práctica, aprenderemos a crear gráficos estadísticos básicos utilizando dos enfoques: las funciones clásicas de Base R (rápidas y directas) y el potente paquete ggplot2 (moderno y extremadamente flexible).

Objetivo

Al finalizar esta práctica, serás capaz de:

Cargar y verificar una base de datos de manera reproducible. Crear diagramas de barras y gráficos de pastel usando tanto Base R como ggplot2. Generar histogramas para explorar la distribución de variables numéricas. Comprender las diferencias y ventajas de cada sistema de graficación.

Desarrollo de la Práctica

Paso 1: Preparación del Entorno

Antes de graficar, debemos preparar nuestro espacio de trabajo, cargando los paquetes necesarios y nuestra base de datos de la práctica anterior.

 #INSTALAR PAQUETES (si no están instalados)
install.packages("ggplot2")
install.packages("readxl")
#CARGAR LIBRERÍAS (se hace en cada sesión)
library(ggplot2)
library(readxl)

Paso 2: Importar la base de datos

¡RECUERDA MODIFICAR ESTA RUTA con la ubicación de tu archivo!

#head() nos muestra las primeras filas
head(equinos_df)
#str() nos da la estructura: nombres de columna y tipo de dato (numérico, texto, etc.)
str(equinos_df)

Paso 3. Diagrama de Barras (para variables categóricas)

Pregunta: ¿Cuántas hembras y cuántos machos hay en nuestro grupo de equinos?

Un diagrama de barras es perfecto para visualizar la frecuencia de categorías como “Sexo”.

Método 1: Usando (barplot) Este método es directo y en dos pasos: primero creas una tabla de frecuencias y luego la graficas.

#Crear una tabla de frecuencias para la variable 'Sexo'
tabla_sexo <- table(equinos_df$Sexo)
print(tabla_sexo)

#Crear el gráfico de barras a partir de la tabla
barplot(tabla_sexo, 
        main = "Distribución de Equinos por Sexo", # Título del gráfico
        xlab = "Sexo", # Etiqueta del eje X
        ylab = "Frecuencia", # Etiqueta del eje Y
        col = c("pink", "lightblue")) # Colores para las barras

Método 2: Usando ggplot2 (Moderno y Flexible) ggplot2 funciona por capas y mapea las variables directamente a la estética del gráfico.

#ggplot() define los datos y los ejes, y geom_bar() crea las barras.
ggplot(data = equinos_df, aes(x = Sexo, fill = Sexo)) + 
  geom_bar() + 
  labs(title = "Distribución de Equinos por Sexo", 
       x = "Sexo", 
       y = "Cantidad (Frecuencia)") + 
  scale_fill_manual(values = c("pink", "lightblue")) # Personalizar colores

Paso 4: Histograma (para variables numéricas)

Un histograma nos ayuda a entender la distribución de una variable numérica como el peso.

#Histograma para la variable 'Peso_Kg'
ggplot(data = equinos_df, aes(x = Peso_Kg)) + 
  geom_histogram(binwidth = 50, fill = "lightblue", color = "black") + 
  labs(title = "Distribución de Pesos en Equinos", 
       x = "Peso (Kg)", y = "Cantidad (Frecuencia)")

Paso 5: Gráfico de pastel

Pregunta: ¿Cuál es el porcentaje de equinos que tienen una condición “Normal” frente a “Bajo Peso”?

Método 1: Usando (pie) Similar a barplot, primero creas una tabla y luego la pasas a la función pie().

#Crear tabla de frecuencias para 'Condicion'
tabla_condicion <- table(equinos_df$Condicion)
print(tabla_condicion)

#Crear gráfico de pastel
pie(tabla_condicion, 
    main = "Proporción de Condición Corporal", 
    col = c("lightgreen", "orange"), 
    labels = paste(names(tabla_condicion), "\n", tabla_condicion, "caballos"))

Método 2: Usando ggplot2 En ggplot2, un gráfico de pastel es un diagrama de barras con un sistema de coordenadas diferente (coord_polar).

ggplot(equinos_df, aes(x = "", fill = Condicion)) + 
  geom_bar(width = 1) + 
  coord_polar("y") + 
  labs(title = "Proporción de Condición Corporal", fill = "Condición") + 
  theme_void() # Elimina los ejes y el fondo para un look limpio

Cuestionario:

Pregunta 1: ¿Cuál es la diferencia fundamental entre un diagrama de barras y un histograma? ¿Qué tipo de variable usarías para cada uno?

Pregunta 2: Para crear un gráfico con las funciones de Base R como barplot o pie, ¿qué necesitas crear primero con la función table()?

Pregunta 3: Si quisieras crear un histograma de la variable Edad_anios, ¿qué variable pondrías en el aes(x = …) de ggplot()?

Pregunta 4: En el gráfico de barras de Base R, ¿para qué sirve el argumento main y para qué sirve el argumento col?

Pregunta 5: Compara los dos métodos de graficación que vimos. ¿Qué ventajas crees que tiene el método de Base R y qué ventajas crees que tiene ggplot2?

“PROYECTO PAPIME PE215125 DESARROLLO DE MATERIAL DE PRÁCTICAS Y APOYO AUDIOVISUAL PARA LA ASIGNATURA DE MÉTODOS ESTADÍSTICOS EN MEDICINA VETERINARIA Y ZOOTECNIA”

Los autores y participantes agradecen al Programa de Apoyo a Proyectos para Innovar y Mejorar la Educación (PAPIME) de la Universidad Nacional Autónoma de México, por el apoyo brindado, el cual fue fundamental para el éxito de este proyecto. Así como a la Facultad de Medicina Veterinaria y Zootecnia y al Departamento de Genética y Bioestadística.

Héctor Alexander Camarena Ledesma, Jessica González Perea, Ángel Moisés Rentería López, Marco Antonio Alvarado Salas, Argelia Ximena Hernández Recio, Carlos Leonardo Pérez Cuenca, Fabiola Asunción Flores Figueroa, Braulio Herrera Ramírez, Areli Maldonado Fernández, Arenas Escamilla Daniel, Pineda Alatriste Saúl, Rogers Montoya Nathaniel Alec, Noé Orlando Juárez López, Daniel Alonso Domínguez Olvera.