Tuesday 14 November 2017

Pandas De Media Móvil Con Ponderación Exponencial


Suavizado con promedios móviles con ponderación exponencial Un promedio móvil toma una serie de tiempo ruidosa y reemplaza cada valor con el valor promedio de una vecindad sobre el valor dado. Este barrio puede consistir en datos puramente históricos, o puede estar centrado en el valor dado. Además, los valores en el vecindario pueden ponderarse usando diferentes conjuntos de pesos. Aquí hay un ejemplo de una media móvil ponderada de tres puntos, usando datos históricos, Aquí, representa la señal suavizada, y representa la serie de tiempo ruidosa. En contraste con las medias móviles simples, una media móvil ponderada exponencialmente (EWMA) ajusta un valor de acuerdo con una suma exponencialmente ponderada de todos los valores anteriores. Esta es la idea básica, esto es bueno porque usted no tiene que preocuparse por tener una ventana de tres puntos, frente a una ventana de cinco puntos, o preocuparse por la adecuación de su esquema de ponderación. Con la EWMA, las perturbaciones previas 8220 recordadas, 8221 y 8220 se olvidan lentamente, 8221 por el término en la última ecuación, mientras que con una ventana o vecindario con límites discretos, una perturbación se olvida tan pronto como sale de la ventana. Promedio de la EWMA para acomodar las tendencias Después de leer sobre EWMAs en un libro de análisis de datos, había ido adelante felizmente con esta herramienta en cada aplicación de suavizado único que me encontré. No fue hasta más tarde que me enteré de que la función EWMA es realmente sólo apropiado para datos estacionarios, es decir, datos sin tendencias o estacionalidad. En particular, la función EWMA resiste las tendencias lejos de la media actual que 8282s ya 8220seen8221. Por lo tanto, si tiene una función de ruido ruidosa que va de 0 a 1 y luego vuelve a 0, entonces la función EWMA devolverá valores bajos en el lado de subida y altos valores en el lado de bajada. Una forma de eludir esto es suavizar la señal en ambas direcciones, marchar hacia adelante, y luego marchar hacia atrás, y luego promediar los dos. Aquí, usaremos la función EWMA proporcionada por el módulo pandas. Holt-Winters Segunda Orden EWMA Y aquí está un código de Python que implementa el método de segunda orden de Holt-Winters en otra función de sombrero ruidoso, como antes. Analogamente, DataFrame tiene un método cov para calcular covariancias entre pares de las series en el DataFrame, también excluyendo NA / valores nulos. Suponiendo que los datos faltantes faltan al azar, esto resulta en una estimación para la matriz de covarianza que es imparcial. Sin embargo, para muchas aplicaciones esta estimación puede no ser aceptable porque no se garantiza que la matriz de covarianza estimada sea positiva semi-definida. Esto podría conducir a correlaciones estimadas que tienen valores absolutos que son mayores que uno, y / o una matriz de covarianza no invertible. Ver Estimación de matrices de covarianza para más detalles. DataFrame. cov también admite una palabra clave opcional minperiods que especifica el número mínimo requerido de observaciones para cada par de columnas para tener un resultado válido. Los pesos utilizados en la ventana se especifican mediante la palabra clave wintype. La lista de tipos reconocidos son: boxcar triang blackman hamming bartlett parzen bohman blackmanharris nuttall barthann kaiser (necesidades beta) gaussian (necesita std) generalgaussian (necesita poder, ancho) slepian (necesita ancho). Tenga en cuenta que la ventana del vagón es equivalente a mean (). Para algunas funciones de ventana, se deben especificar parámetros adicionales: Para. sum () con un wintype. No hay normalización hecha a los pesos para la ventana. Pasar pesos personalizados de 1, 1, 1 dará un resultado diferente que pasar pesos de 2, 2, 2. por ejemplo. Al pasar un wintype en lugar de especificar explícitamente los pesos, los pesos ya están normalizados para que el mayor peso sea 1. En contraste, la naturaleza del cálculo. mean () es tal que los pesos se normalizan uno con respecto al otro. Los pesos de 1, 1, 1 y 2, 2, 2 dan el mismo resultado. Rolling nuevo tiempo en la versión 0.19.0. Nuevos en la versión 0.19.0 son la capacidad de pasar un offset (o convertible) a un método. rolling () y hacer que produzca ventanas de tamaño variable basadas en la ventana de tiempo pasada. Para cada punto de tiempo, esto incluye todos los valores anteriores que ocurren dentro del delta de tiempo indicado. Esto puede ser particularmente útil para un índice de frecuencia de tiempo no regular. Este es un índice de frecuencia regular. El uso de un parámetro de ventana entero funciona para rodar a lo largo de la frecuencia de la ventana. Especificar un desplazamiento permite una especificación más intuitiva de la frecuencia de rodadura. Utilizando un índice no regular, pero aún monótono, rodar con una ventana entera no imparte ningún cálculo especial. El uso de la especificación de tiempo genera ventanas variables para estos datos escasos. Además, ahora permitimos que un parámetro opcional en el parámetro especifique una columna (en lugar del valor predeterminado del índice) en un DataFrame. Conocimiento del tiempo Rolling vs. Resampling El uso de. rolling () con un índice basado en el tiempo es muy similar al remuestreo. Ambos operan y realizan operaciones reductivas en objetos pandas indexados en el tiempo. Cuando se utiliza. rolling () con un desplazamiento. El desplazamiento es un tiempo-delta. Tome una ventana de búsqueda hacia atrás en el tiempo, y agregue todos los valores en esa ventana (incluyendo el punto final, pero no el punto de inicio). Este es el nuevo valor en ese punto en el resultado. Se trata de ventanas de tamaño variable en el espacio de tiempo para cada punto de la entrada. Obtendrá un resultado del mismo tamaño que la entrada. Cuando se utiliza. resample () con un desplazamiento. Construir un nuevo índice que es la frecuencia del desplazamiento. Para cada contenedor de frecuencia, el agregado apunta desde la entrada dentro de una ventana que mira hacia atrás en el tiempo que cae en ese contenedor. El resultado de esta agregación es la salida para ese punto de frecuencia. Las ventanas tienen un tamaño de tamaño fijo en el espacio de frecuencia. Su resultado tendrá la forma de una frecuencia regular entre el mínimo y el máximo del objeto de entrada original. Para resumir. Rolling () es una operación de ventana basada en el tiempo, mientras que. resample () es una operación de ventana basada en la frecuencia. Centrar las ventanas De forma predeterminada, las etiquetas se ajustan al borde derecho de la ventana, pero una palabra clave central está disponible para que las etiquetas se puedan establecer en el centro. Funciones de ventana binaria cov () y corr () pueden calcular las estadísticas de las ventanas en movimiento sobre dos Series o cualquier combinación de DataFrame / Series o DataFrame / DataFrame. Aquí está el comportamiento en cada caso: dos Series. Calcular la estadística para el emparejamiento. DataFrame / Series. Calcular las estadísticas para cada columna del DataFrame con la serie pasada, devolviendo así un DataFrame. DataFrame / DataFrame. Por defecto calcula la estadística para los nombres de columna coincidentes, devolviendo un DataFrame. Si se pasa el argumento de palabra clave pairwiseTrue, entonces calcula la estadística para cada par de columnas, devolviendo un Panel cuyos elementos son las fechas en cuestión (consulte la siguiente sección). Computación de covarianzas y correlaciones en pares En el análisis de datos financieros y otros campos es común calcular las matrices de covarianza y correlación para una colección de series de tiempo. A menudo uno también está interesado en la movilidad-ventana covarianza y matrices de correlación. Esto se puede hacer pasando el argumento de palabra clave pairwise, que en el caso de las entradas de DataFrame producirá un Panel cuyos elementos son las fechas en cuestión. En el caso de un solo argumento de DataFrame, el argumento pairwise puede incluso omitirse: Los valores faltantes se ignoran y cada entrada se calcula usando las observaciones completas pairwise. Consulte la sección de covarianza para las advertencias asociadas con este método de cálculo de covarianza y matrices de correlación. Aparte de no tener un parámetro de ventana, estas funciones tienen las mismas interfaces que sus contrapartes de desplazamiento. Como arriba, los parámetros que aceptan son: minperiodos. El umbral de puntos de datos no nulos que se requieren. El valor predeterminado es el mínimo necesario para calcular la estadística. No se emitirán NaNs una vez que se hayan observado puntos de datos no nulos de los minperiodos. centrar. Boolean, si se deben establecer las etiquetas en el centro (por defecto es False) La salida de los métodos. rolling y. expanding no devuelve un NaN si hay al menos valores no nulos de minperiodos en la ventana actual. Esto difiere de cumsum. Cumprod. Cummax Y cummin. Que devuelven NaN en la salida dondequiera que se encuentre un NaN en la entrada. Una estadística de ventana en expansión será más estable (y menos sensible) que su contrapartida de ventana de balanceo a medida que el tamaño creciente de la ventana disminuye el impacto relativo de un punto de datos individual. A modo de ejemplo, aquí está la salida media () para el conjunto de datos de series temporales anteriores: Ventas Exponencialmente Ponderadas Un conjunto relacionado de funciones son versiones ponderadas exponencialmente de varias de las estadísticas anteriores. Se accede a una interfaz similar a. rolling y. expanding a través del método. ewm para recibir un objeto EWM. Se proporciona una serie de métodos EW en expansión (exponencialmente ponderados): El promedio móvil ponderado exponencial (EWMA) es un estadístico para supervisar el proceso que promedia los datos de una manera que da menos y menos peso a los datos a medida que se eliminan en el tiempo . Comparación del diagrama de control de Shewhart y las técnicas del diagrama de control de EWMA Para la técnica de control de gráficos de Shewhart, la decisión sobre el estado de control del proceso en cualquier momento (t) depende únicamente de la medición más reciente del proceso y, El grado de veracidad de las estimaciones de los límites de control a partir de datos históricos. Para la técnica de control EWMA, la decisión depende de la estadística EWMA, que es un promedio exponencialmente ponderado de todos los datos anteriores, incluyendo la medición más reciente. Mediante la elección del factor de ponderación (lambda), el procedimiento de control EWMA puede hacerse sensible a una deriva pequeña o gradual en el proceso, mientras que el procedimiento de control Shewhart sólo puede reaccionar cuando el último punto de datos está fuera de un límite de control. Definición de EWMA La estadística que se calcula es: mbox t lambda Yt (1-lambda) mbox ,,, mbox ,,, t 1,, 2,, ldots ,, n. Donde (mbox 0) es la media de los datos históricos (objetivo) (Yt) es la observación en el tiempo (t) (n) es el número de observaciones a monitorear incluyendo (mbox 0) (0 Interpretación de la carta de control EWMA El rojo Puntos son los datos en bruto la línea irregular es la estadística EWMA con el tiempo. El gráfico nos dice que el proceso está en control porque todos (mbox t) se encuentran entre los límites de control. No obstante, parece que hay una tendencia hacia arriba durante los últimos 5 Períodos

No comments:

Post a Comment