Utilizando MATLAB, ¿cómo puedo encontrar el promedio móvil de 3 días de una columna específica de una matriz y añadir el promedio móvil a esa matriz? Estoy tratando de calcular el promedio móvil de 3 días de abajo hacia arriba de la matriz. He proporcionado mi código: Dada la siguiente matriz a y máscara: He intentado implementar el comando conv pero estoy recibiendo un error. Aquí está el comando conv que he estado tratando de usar en la segunda columna de la matriz a: La salida que deseo se da en la siguiente matriz: Si usted tiene alguna sugerencia, lo agradecería mucho. Gracias Por la columna 2 de la matriz a, estoy calculando el promedio móvil de 3 días de la siguiente manera y colocando el resultado en la columna 4 de la matriz a (I renombrado matriz a como 39desiredOutput39 sólo por ilustración). El promedio de 3 días de 17, 14, 11 es 14 el promedio de 3 días de 14, 11, 8 es 11 el promedio de 3 días de 11, 8, 5 es 8 y el promedio de 3 días de 8, 5, 2 es 5. No hay valor en las 2 filas inferiores para la cuarta columna porque el cálculo para la media móvil de 3 días comienza en la parte inferior. La salida 39valid39 no se mostrará hasta al menos 17, 14 y 11. Esperamos que esto tiene sentido ndash Aaron Jun 12 13 at 1:28 1 Respuesta En general, sería de ayuda si se muestra el error. En este caso usted está haciendo dos cosas mal: Primero su convolución necesita ser dividido por tres (o la longitud de la media móvil) Segundo, observe el tamaño de c. Usted no puede apenas caber c en a. La forma típica de obtener un promedio móvil sería usar lo mismo: pero eso no se parece a lo que quieres. En cambio, se ven obligados a utilizar un par de líneas: Ive tiene un vector y quiero calcular el promedio móvil de la misma (utilizando una ventana de 5 de ancho). Por ejemplo, si el vector en cuestión es 1,2,3,4,5,6,7,8. Entonces la primera entrada del vector resultante debe ser la suma de todas las entradas en 1,2,3,4,5 (es decir, 15) la segunda entrada del vector resultante debe ser la suma de todas las entradas en 2,3,4, 5,6 (es decir, 20) etc. Al final, el vector resultante debe ser 15,20,25,30. ¿Cómo puedo hacerlo? La función conv está justo en tu callejón: Benchmark Tres respuestas, tres métodos diferentes. Aquí hay un punto de referencia rápido (diferentes tamaños de entrada, anchura de ventana fija de 5) usando timeit sentirse libre de meter agujeros en ella (en los comentarios) si usted piensa que necesita ser refinado. Conv surge como el enfoque más rápido su cerca de dos veces más rápido que las monedas acercarse (utilizando filtro). Y cerca de cuatro veces más rápido que el de Luis Mendos (usando cumsum). Aquí hay otro punto de referencia (tamaño de entrada fijo de 1 a 4. diferentes anchos de ventana). Aquí, Luis Mendos enfoque cumsum surge como el ganador claro, porque su complejidad se rige principalmente por la longitud de la entrada y es insensible a la anchura de la ventana. Conclusión Para resumir, debe usar el método conv si su ventana es relativamente pequeña, use el enfoque cumsum si su ventana es relativamente grande. Promedio móvil (datos, ventana, dim, opción) calcula una media móvil centrada de los datos de la matriz de datos utilizando un tamaño de ventana especificado en la ventana en dimensión dim, utilizando el algoritmo especificado en la opción. Dim y la opción son las entradas opcionales y por defecto a 1. Dim y la opción de entradas opcionales se pueden omitir por completo o se puede reemplazar con a. Por ejemplo movingmean (data, window) dará los mismos resultados que movingmean (data, window, 1,1) o movingmean (data, window ,, 1). El tamaño y la dimensión de la matriz de datos de entrada sólo están limitados por el tamaño máximo de la matriz para la plataforma. La ventana debe ser un entero y debe ser impar. Si la ventana es uniforme entonces se redondea abajo al siguiente número impar más bajo. La función calcula el promedio móvil que incorpora un punto central y (ventana-1) / 2 elementos antes y después en la dimensión especificada. En los bordes de la matriz se reduce el número de elementos antes o después de modo que el tamaño real de la ventana sea menor que la ventana especificada. La función se divide en dos partes, un algoritmo 1d-2d y un algoritmo 3D. Esto se hizo para optimizar la velocidad de la solución, especialmente en matrices más pequeñas (es decir, 1000 x 1). Además, se proporcionan varios algoritmos diferentes para el problema 1d-2d y 3d, ya que en ciertos casos el algoritmo por defecto no es el más rápido. Esto ocurre típicamente cuando la matriz es muy ancha (es decir 100 x 100000 o 10 x 1000 x 1000) y el promedio móvil se calcula en la dimensión más corta. El tamaño en el que el algoritmo predeterminado es más lento dependerá de la computadora. MATLAB 7.8 (R2009a) Etiquetas para este archivo Por favor, inicie sesión para etiquetar archivos. Inicia sesión para añadir un comentario o calificación. Comentarios y Calificaciones (8) La función se ocupa de los extremos cortando la parte trasera o delantera de la ventana y pasando a una media móvil principal o descendente en lugar de una media centrada. Para ir con el ejemplo que dio en su comentario si el tamaño de la ventana es 3 entonces en un centro de 1 la media de la función de datos de los puntos 1 y 2 en un centro de 2 puntos 1, 2 y 3 se promedian en un centro de 9 Los puntos 8, 9 y 10 se promedian y en un centro de 10 (se supone que el vector tiene 10 entradas) los puntos 9 y 10 se promedian. ¿Cómo se mueve con los extremos Se empieza con un tamaño de ventana que abarca sólo el punto 1 en 1, luego 3 puntos en el punto 2, luego aumentando en el tamaño de la ventana hasta que el tamaño de la ventana sea el especificado en la entrada de la función Gracias. Bonito y simple. Gracias. Buen trabajo Muy útil como dijo Stephan Wolf. Justo lo que estaba buscando. Media móvil centrada que es capaz de trabajar en una trama en todo el ancho, sin tener que buscar el tamaño de ventana del filtro y mover el principio. Great MathWorks Acelerar el ritmo de la ingeniería y la ciencia MathWorks es el desarrollador líder de software de computación matemática para ingenieros y científicos.
Bienvenido a la casa de los mundos de las primeras opciones binarias automatizado Asesor experto Si usted es nuevo en opciones binarias, puede leer más sobre él aquí. Acerca de nuestras señales Las opciones binarias son simplemente inversiones que usted realiza basándose en si el precio actual de un activo aumentará o disminuirá al vencimiento. La razón binaria opciones son tan populares es debido a sus cantidades increíbles de pago. Puede generar hasta 75 de su inversión en cada comercio ganador. Nuestras señales se han desarrollado y probado durante un período de años, y ahora están disponibles para ser utilizados de una manera automatizada con un asesor experto Lo que está incluido en nuestro paquete Expert Advisor que se puede utilizar ya sea automatizado o para generar señales para su no - MT4 BO broker 5 Plantillas de las que puede elegir, dependiendo de su estilo de negociación Materiales de formación de amplificadores de educación para el comercio Opciones binarias en Meta Trad...
Comments
Post a Comment