Cálculo de Desviación Estándar en Series de Tiempo con NumPy
Clase 22 de 28 • Curso de Introducción al Álgebra Lineal: Vectores
Resumen
¿Qué son los vectores en series de tiempo?
¡Claro! Los vectores pueden representar más que simples objetos geométricos. Un vector también puede considerarse como una serie de tiempo, donde cada componente del vector representa una medición a intervalos sucesivos en el tiempo. Por ejemplo, si x
es un vector con valores [x0, x1, x2, ..., xn]
, cada xi
se refiere a una medida en el tiempo i
. Este enfoque es útil para analizar datos como medidas financieras, métricas de rendimiento, etc.
¿Cómo calcular la desviación estándar de un vector?
Calcular la desviación estándar de un vector es crucial cuando los vectores se utilizan como series de tiempo o datos medidos. La idea es medir la dispersión de las entradas de un vector con respecto a su media.
-
Vector medio: Primero, definimos un nuevo vector
x_tilde = x - average(x) * 1
, donde1
es un vector con todas las entradas iguales a la media del vector original. Esto asegura que el promedio dex_tilde
sea cero. -
Fórmula de la desviación estándar: La desviación estándar de un vector
x
se calcula como la raíz cuadrada de la media del cuadrado dex_tilde
, lo cual coincide con elRMS
(Root Mean Square) dex_tilde
. -
Interpretación: Nos dice cuánto se desvían, en promedio, las entradas del vector con respecto a la media del vector. Un ejemplo claro sería el salario promedio donde la mayoría se agrupa alrededor de un valor central.
Ejercicio de ejemplo con Python
Veamos cómo se hace en Python usando NumPy:
import numpy as np
# Vector de ejemplo
x = np.array([1, -2, 3, 2])
# Calcular el promedio
promedio = np.mean(x)
# Se calcula x_tilde
x_tilde = x - promedio * np.array([1, 1, 1, 1])
# Comprobación del promedio de x_tilde
promedio_x_tilde = np.mean(x_tilde)
# Desviación estándar manual
desviacion_estandar_manual = np.linalg.norm(x_tilde) / np.sqrt(len(x_tilde))
# Usando NumPy
desviacion_estandar_numpy = np.std(x)
print(f"Desviación estándar manual: {desviacion_estandar_manual}")
print(f"Desviación estándar con NumPy: {desviacion_estandar_numpy}")
En este código, ambas formas dan la misma desviación estándar, confirmando la utilidad de NumPy para simplificar los cálculos.
¿Cuál es la relación entre promedio, RMS y desviación estándar?
Existe una relación fundamental entre estas tres medidas en un vector:
- Promedio (mu): Se refiere al valor central o promedio del vector.
- Desviación estándar (sigma): Mide cuánto varían los datos del promedio.
- RMS: Una medida de la magnitud del vector que se relaciona con el promedio y la desviación estándar.
La relación específica es:
[ \text{RMS}^2(x) = \text{promedio}(x)^2 + \sigma^2(x) ]
Esto significa que el cuadrado del RMS es la suma del cuadrado del promedio más el cuadrado de la desviación estándar. Esta fórmula es integral en muchas aplicaciones estadísticas y financieras.
¿Por qué es fundamental entender estas medidas?
Comprender el promedio, la desviación estándar y el RMS no solo es clave para el análisis de datos sofisticado, sino que también ayuda a prever la variabilidad y los rangos de expectación de los datos. En el contexto de inversión en mercados financieros, estas medidas se usan para calcular riesgos y rendimientos potenciales, ayudándonos a tomar decisiones más informadas y estratégicas. ¡Continúa explorando y aplicando estos conceptos en tus proyectos y herramientas analíticas!