Cálculo y visualización de intervalos de confianza en Python

Clase 12 de 22Curso de Estadística Inferencial para Data Science e Inteligencia Artificial

Resumen

¿Cómo calcular intervalos de confianza en Python?

En el mundo de la estadística y el análisis de datos, los intervalos de confianza son una herramienta fundamental. Estos intervalos nos permiten estimar el rango dentro del cual se encuentra un parámetro poblacional con un determinado nivel de confianza. A continuación, aprenderás cómo calcular y visualizar intervalos de confianza en Python, utilizando poderosas librerías como NumPy y Seaborn.

¿Qué librerías necesito para empezar?

Para calcular intervalos de confianza en Python, es esencial contar con ciertos paquetes que faciliten la manipulación de datos y la visualización gráfica. En este caso, utilizaremos las siguientes librerías:

  • Pandas: Ideal para la manipulación y análisis de datos.
  • NumPy: Útil para la creación de arrays y operaciones matemáticas sobre ellos.
  • Seaborn: Proporciona una interfaz para crear atractivas visualizaciones estadísticas.
  • Seapy.stats: Una librería que nos permite realizar cálculos estadísticos avanzados.

Para empezar, importa las librerías necesarias:

import pandas as pd
import numpy as np
import seaborn as sns
from scipy import stats

¿Cómo puedo crear datos simulados para el análisis?

En un primer paso, crearemos los datos que vamos a analizar. No es necesario importar un dataset, ya que aprenderemos a generarlo utilizando NumPy. Estos datos simularán días de vacaciones y dinero gastado:

np.random.seed(20)  # Fijamos una semilla para reproducibilidad
dias_vacaciones = np.random.randint(0, 10, 10)  # Números aleatorios del 0 al 10
dinero_gastado = dias_vacaciones + np.random.rand(10)  # Suma de números aleatorios continuos

¿Cómo visualizo los datos y los intervalos de confianza?

Podemos visualizar la relación entre las variables dias_vacaciones y dinero_gastado usando Seaborn, y al mismo tiempo mostrar un intervalo de confianza del 80%.

sns.regplot(x=dias_vacaciones, y=dinero_gastado, ci=80)  # Visualización con intervalo de confianza del 80%

¿Cómo unimos las variables en un DataFrame?

Una vez generadas las variables, el siguiente paso es combinarlas en un DataFrame para facilitar su manejo y análisis posterior:

datos = list(zip(dias_vacaciones, dinero_gastado))  # Unir con un zip
tabla = pd.DataFrame(datos, columns=['Días de Vacaciones', 'Dinero Gastado'])  # Crear DataFrame
print(tabla)

¿Cómo calculo intervalos de confianza al 95%?

Finalmente, calcularemos los intervalos de confianza utilizando stats.norm.interval. Esto es especialmente útil si deseas determinar el rango en el cual se encuentra el promedio de días de vacaciones y el porcentaje de dinero gastado:

media_vacaciones = np.mean(dias_vacaciones)
desviacion_vacaciones = np.std(dias_vacaciones, ddof=1)
confianza_vacaciones = stats.norm.interval(0.95, loc=media_vacaciones, scale=desviacion_vacaciones/np.sqrt(len(dias_vacaciones)))

media_gasto = np.mean(dinero_gastado)
desviacion_gasto = np.std(dinero_gastado, ddof=1)
confianza_gasto = stats.norm.interval(0.95, loc=media_gasto, scale=desviacion_gasto/np.sqrt(len(dinero_gastado)))

print(f"Intervalo de confianza para Días de Vacaciones: {confianza_vacaciones}")
print(f"Intervalo de confianza para Dinero Gastado: {confianza_gasto}")

Este procedimiento no solo fortalece tu comprensión de los intervalos de confianza, sino que también te permite interpretar cómo estos intervalos se manifiestan en tus datos. ¡Te animamos a que practiques con diferentes conjuntos de datos y distintos niveles de significancia para consolidar tus habilidades analíticas!