Contenido de este artículo
- 0
- 0
- 0
- 0
Actualizado el 17 de julio de 2024, por Luis Benites.
En el análisis de series de tiempo, un promedio móvil es simplemente el valor promedio de un cierto número de períodos anteriores.
Una media móvil exponencial es un tipo de media móvil que da más peso a las observaciones recientes, lo que significa que puede capturar las tendencias recientes más rápidamente.
Este tutorial explica cómo calcular una media móvil exponencial en R.
Ejemplo: media móvil exponencial en R
Supongamos que tenemos el siguiente marco de datos en R:
#create marco de datos df <- data.frame (período = 1:10, ventas = c (25, 20, 14, 16, 27, 20, 12, 15, 14, 19)) #ver marco de datos df ventas del periodo 1 1 25 2 2 20 3 3 14 4 4 16 5 5 27 6 6 20 7 7 12 8 8 15 9 9 14 10 10 19
Podemos usar la función movavg () del paquete pracma para calcular el promedio móvil ponderado exponencialmente para un cierto número de períodos anteriores.
Esta función utiliza la siguiente sintaxis:
movavg (x, n, type = c («s», «t», «w», «m», «e», «r»))
dónde:
- x: serie temporal como vector numérico
- n: número de períodos anteriores que se utilizarán para el promedio
- type: Tipo de media móvil a calcular. Usaremos «e» para la media móvil ponderada exponencial.
Por ejemplo, a continuación se explica cómo calcular la media móvil ponderada exponencialmente utilizando los cuatro períodos anteriores:
biblioteca (pracma) #cree una nueva columna para contener el promedio móvil ponderado exponencialmente de 4 días df $ EWM_4day <- movavg (df $ sales, n = 4, type = ' e ') #view DataFrame df período de ventas 4dayEWM 0 1 25 25.000000 1 2 20 23.000000 2 3 14 19.400000 3 4 16 18.040000 4 5 27 21.624000 5 6 20 20,974400 6 7 12 17.384640 7 8 15 16.430784 8 9 14 15.458470 9 10 19 16.875082
También podemos usar la biblioteca de visualización ggplot2 para visualizar las ventas en comparación con el promedio móvil ponderado exponencialmente de 4 días:
biblioteca (ggplot2) biblioteca (reshape2) # fundir datos en formato para trazar fácilmente df <- melt (df, id.vars = ' period ', variable.name = ' series ') #plot ventas frente a promedio móvil ponderado exponencialmente de 4 días ggplot (df, aes (período, valor)) + geom_line ( aes (color = serie))
La línea roja muestra las ventas durante cada período y la línea azul muestra el promedio móvil ponderado exponencialmente.
Recursos adicionales
Cómo trazar múltiples columnas en R
Cómo promediar entre columnas en R
Cómo calcular la media por grupo en R
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/
¿Te hemos ayudado?
Ayudanos ahora tú, dejanos un comentario de agradecimiento, nos ayuda a motivarnos y si te es viable puedes hacer una donación:La ayuda no cuesta nada
Por otro lado te rogamos que compartas nuestro sitio con tus amigos, compañeros de clase y colegas, la educación de calidad y gratuita debe ser difundida, recuerdalo: