El análisis estadístico es una parte fundamental de la analítica de datos, ya que permite extraer información significativa y tomar decisiones informadas basadas en datos. En esta sección, exploraremos los conceptos básicos del análisis estadístico, incluyendo medidas descriptivas, pruebas de hipótesis y regresión simple.

Conceptos Clave

  1. Medidas Descriptivas

Las medidas descriptivas son estadísticas que resumen y describen las características de un conjunto de datos. Las más comunes incluyen:

  • Media (Promedio): La suma de todos los valores dividida por el número de valores.
  • Mediana: El valor central cuando los datos están ordenados.
  • Moda: El valor que aparece con mayor frecuencia.
  • Varianza y Desviación Estándar: Medidas de dispersión que indican cuánto varían los datos respecto a la media.

Ejemplo:

import numpy as np

# Datos de ejemplo
data = [10, 20, 20, 40, 50]

# Cálculo de medidas descriptivas
media = np.mean(data)
mediana = np.median(data)
moda = max(set(data), key=data.count)
varianza = np.var(data)
desviacion_estandar = np.std(data)

print(f"Media: {media}")
print(f"Mediana: {mediana}")
print(f"Moda: {moda}")
print(f"Varianza: {varianza}")
print(f"Desviación Estándar: {desviacion_estandar}")

  1. Pruebas de Hipótesis

Las pruebas de hipótesis son procedimientos estadísticos que permiten tomar decisiones sobre una población basándose en una muestra de datos. Los pasos básicos incluyen:

  • Formulación de Hipótesis:
    • Hipótesis Nula (H0): No hay efecto o diferencia.
    • Hipótesis Alternativa (H1): Hay un efecto o diferencia.
  • Selección del Nivel de Significancia (α): Comúnmente 0.05.
  • Cálculo del Estadístico de Prueba: Dependiendo del tipo de prueba (t-test, chi-cuadrado, etc.).
  • Decisión: Comparar el p-valor con α para aceptar o rechazar H0.

Ejemplo:

from scipy import stats

# Datos de ejemplo
data1 = [10, 20, 30, 40, 50]
data2 = [15, 25, 35, 45, 55]

# Prueba t para dos muestras independientes
t_stat, p_value = stats.ttest_ind(data1, data2)

print(f"Estadístico t: {t_stat}")
print(f"p-valor: {p_value}")

if p_value < 0.05:
    print("Rechazamos la hipótesis nula (H0).")
else:
    print("No podemos rechazar la hipótesis nula (H0).")

  1. Regresión Simple

La regresión simple es una técnica para modelar la relación entre dos variables cuantitativas. La ecuación de la regresión lineal es:

\[ y = \beta_0 + \beta_1 x + \epsilon \]

Donde:

  • \( y \) es la variable dependiente.
  • \( x \) es la variable independiente.
  • \( \beta_0 \) es la intersección (constante).
  • \( \beta_1 \) es la pendiente.
  • \( \epsilon \) es el término de error.

Ejemplo:

import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# Datos de ejemplo
x = np.array([1, 2, 3, 4, 5]).reshape(-1, 1)
y = np.array([2, 3, 5, 7, 11])

# Modelo de regresión lineal
model = LinearRegression()
model.fit(x, y)

# Predicciones
y_pred = model.predict(x)

# Visualización
plt.scatter(x, y, color='blue', label='Datos Reales')
plt.plot(x, y_pred, color='red', label='Línea de Regresión')
plt.xlabel('Variable Independiente (x)')
plt.ylabel('Variable Dependiente (y)')
plt.legend()
plt.show()

print(f"Intersección (β0): {model.intercept_}")
print(f"Pendiente (β1): {model.coef_[0]}")

Ejercicios Prácticos

Ejercicio 1: Cálculo de Medidas Descriptivas

Dado el siguiente conjunto de datos, calcula la media, mediana, moda, varianza y desviación estándar.

data = [12, 15, 12, 18, 20, 22, 15, 17, 19, 21]

Solución:

import numpy as np

data = [12, 15, 12, 18, 20, 22, 15, 17, 19, 21]

media = np.mean(data)
mediana = np.median(data)
moda = max(set(data), key=data.count)
varianza = np.var(data)
desviacion_estandar = np.std(data)

print(f"Media: {media}")
print(f"Mediana: {mediana}")
print(f"Moda: {moda}")
print(f"Varianza: {varianza}")
print(f"Desviación Estándar: {desviacion_estandar}")

Ejercicio 2: Prueba de Hipótesis

Realiza una prueba t para dos muestras independientes con los siguientes datos y determina si hay una diferencia significativa entre las dos muestras.

data1 = [22, 24, 25, 23, 26, 28, 30]
data2 = [18, 20, 22, 19, 21, 23, 25]

Solución:

from scipy import stats

data1 = [22, 24, 25, 23, 26, 28, 30]
data2 = [18, 20, 22, 19, 21, 23, 25]

t_stat, p_value = stats.ttest_ind(data1, data2)

print(f"Estadístico t: {t_stat}")
print(f"p-valor: {p_value}")

if p_value < 0.05:
    print("Rechazamos la hipótesis nula (H0).")
else:
    print("No podemos rechazar la hipótesis nula (H0).")

Ejercicio 3: Regresión Lineal Simple

Utiliza los siguientes datos para ajustar un modelo de regresión lineal simple y visualiza la línea de regresión.

x = [1, 2, 3, 4, 5]
y = [3, 4, 2, 5, 6]

Solución:

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

x = np.array([1, 2, 3, 4, 5]).reshape(-1, 1)
y = np.array([3, 4, 2, 5, 6])

model = LinearRegression()
model.fit(x, y)

y_pred = model.predict(x)

plt.scatter(x, y, color='blue', label='Datos Reales')
plt.plot(x, y_pred, color='red', label='Línea de Regresión')
plt.xlabel('Variable Independiente (x)')
plt.ylabel('Variable Dependiente (y)')
plt.legend()
plt.show()

print(f"Intersección (β0): {model.intercept_}")
print(f"Pendiente (β1): {model.coef_[0]}")

Conclusión

En esta sección, hemos cubierto los conceptos básicos del análisis estadístico, incluyendo medidas descriptivas, pruebas de hipótesis y regresión simple. Estas herramientas son fundamentales para interpretar datos y tomar decisiones informadas. En el siguiente módulo, profundizaremos en la interpretación de datos y cómo utilizar estos análisis para optimizar sitios web, aplicaciones y campañas de marketing.

Curso de Analytics: Herramientas y Técnicas para la Toma de Decisiones

Módulo 1: Introducción a la Analítica

Módulo 2: Herramientas de Analítica

Módulo 3: Técnicas de Recopilación de Datos

Módulo 4: Análisis de Datos

Módulo 5: Interpretación de Datos y Toma de Decisiones

Módulo 6: Casos Prácticos y Ejercicios

Módulo 7: Avances y Tendencias en Analítica

Módulo 8: Recursos Adicionales y Certificaciones

© Copyright 2024. Todos los derechos reservados