Sintaxis:
Podemos calcular el promedio móvil de varias maneras que son las siguientes:
Método 1:
NúmPy. cumsum ( )Devuelve la suma de los elementos de la matriz dada. Podemos calcular el promedio móvil dividiendo la salida de cumsum() por el tamaño de la matriz.
Método 2:
NúmPy. y . promedio ( )Tiene los siguientes parámetros.
a: datos en forma de matriz que se promediarán.
eje: su tipo de dato es int y es un parámetro opcional.
peso: también es una matriz y un parámetro opcional. Puede tener la misma forma que una forma 1-D. En el caso de unidimensional, debe tener la misma longitud que el arreglo “a”.
Tenga en cuenta que parece que no hay una función estándar en NumPy para calcular el promedio móvil, por lo que se puede hacer con otros métodos.
Método 3:
Otro método que se puede utilizar para calcular la media móvil es:
p.ej. retorcerse ( a , en , modo = 'completo' )En esta sintaxis, a es la primera dimensión de entrada y v es el segundo valor de dimensión de entrada. El modo es el valor opcional, puede ser completo, igual y válido.
Ejemplo # 01:
Ahora, para explicar más sobre el promedio móvil en Numpy, demos un ejemplo. En este ejemplo, sacaremos el promedio móvil de una matriz con la función de convolución de NumPy. Entonces, tomaremos una matriz 'a' con 1,2,3,4,5 como sus elementos. Ahora, llamaremos a la función np.convolve y almacenaremos su salida en nuestra variable 'b'. Después de eso, imprimiremos el valor de nuestra variable 'b'. Esta función calculará la suma móvil de nuestra matriz de entrada. Imprimiremos la salida para ver si nuestra salida es correcta o no.
Después de eso, convertiremos nuestra salida al promedio móvil usando el mismo método de convolución. Para calcular la media móvil, solo tendremos que dividir la suma móvil por el número de muestras. Pero el principal problema aquí es que, como se trata de una media móvil, el número de muestras sigue cambiando dependiendo de la ubicación en la que nos encontremos. Entonces, para resolver ese problema, simplemente crearemos una lista de los denominadores y necesitamos convertir esto en un promedio.
Para ese propósito, hemos inicializado otra variable 'denom' para el denominador. Es simple para la comprensión de listas usando el truco del rango. Nuestra matriz tiene cinco elementos diferentes, por lo que el número de muestras en cada lugar irá de uno a cinco y luego volverá a bajar de cinco a uno. Entonces, simplemente agregaremos dos listas juntas y las almacenaremos en nuestro parámetro 'denom'. Ahora imprimiremos esta variable para comprobar si el sistema nos ha dado los verdaderos denominadores o no. Después de eso, dividiremos nuestra suma móvil con los denominadores y la imprimiremos almacenando la salida en la variable 'c'. Ejecutemos nuestro código para comprobar los resultados.
importar entumecido como p.ej.a = [ 1 , 2 , 3 , 4 , 5 ]
b = p.ej. retorcerse ( a , p.ej. ones_like ( a ) )
impresión ( 'Suma móvil' , b )
denom = lista ( rango ( 1 , 5 ) ) + lista ( rango ( 5 , 0 , - 1 ) )
impresión ( 'Denominadores' , denom )
C = p.ej. retorcerse ( a , p.ej. ones_like ( a ) ) / denom
impresión ( 'Media móvil ' , C )
Después de la ejecución exitosa de nuestro código, obtendremos el siguiente resultado. En la primera línea, hemos impreso la 'Suma móvil'. Podemos ver que tenemos '1' al principio y '5' al final de la matriz, tal como teníamos en nuestra matriz original. El resto de los números son las sumas de diferentes elementos de nuestra matriz.
Por ejemplo, seis en el tercer índice de la matriz proviene de sumar 1, 2 y 3 de nuestra matriz de entrada. Diez en el cuarto índice proviene de 1,2,3 y 4. Quince proviene de sumar todos los números, y así sucesivamente. Ahora, en la segunda línea de nuestra salida, hemos impreso los denominadores de nuestra matriz.
De nuestra salida, podemos ver que todos los denominadores son exactos, lo que significa que podemos dividirlos con nuestra matriz de suma móvil. Ahora, vaya a la última línea de la salida. En la última línea, podemos ver que el primer elemento de nuestra matriz de promedio móvil es 1. El promedio de 1 es 1, por lo que nuestro primer elemento es correcto. La media de 1+2/2 será 1,5. Podemos ver que el segundo elemento de nuestra matriz de salida es 1,5, por lo que el segundo promedio también es correcto. El promedio de 1,2,3 será 6/3=2. También hace que nuestra salida sea correcta. Entonces, a partir de la salida, podemos decir que hemos calculado con éxito el promedio móvil de una matriz.
Conclusión
En esta guía, aprendimos sobre los promedios móviles: qué es el promedio móvil, cuáles son sus usos y cómo calcular el promedio móvil. Lo estudiamos en detalle desde el punto de vista matemático y de programación. En NumPy, no existe una función o proceso específico para calcular el promedio móvil. Pero hay otras funciones diferentes con la ayuda de las cuales podemos calcular el promedio móvil. Hicimos un ejemplo para calcular el promedio móvil y describimos cada paso de nuestro ejemplo. Los promedios móviles son un enfoque útil para pronosticar resultados futuros con la ayuda de datos existentes.