Thursday 19 October 2017

Distancia Media Móvil No Uniforme


Velocidad media no uniforme Vectores Aquí está una manera. Tomé sus datos y apliqué la función aprox para obtener valores uniformemente espaciados y luego filtrar para crear una media móvil de una ventana de tamaño 5. set. seed (1) xc (0,1, 3,3.4, 5, 10, 11.23 ) Y x2 rnorm (longitud (x)) rbind (x, y) crea un espaciado par utilizando las etapas de función aprox ltseq (min (x), max (x), longitud 100) newData lt - approx (x, (NewDatay, rep (1/5, 5)) traza la gráfica de datos (x, y, tipo o) líneas (newDatax, avg, col red) Jim Holtman Data Munger Guru ¿Cuál es el problema que estás tratando de resolver? Dime lo que quieres hacer, no cómo quieres hacerlo. El jueves, 27 de marzo de 2014 a las 12:35, Luca Cerone lthidden correo electrónico gt escribió: gt Queridos todos, gt Tengo un vector xy un vector y f (x). Gt, p. (Longitud (x)) gt gt Me gustaría aplicar una media móvil a y, sabiendo que los valores de x gt no son unifor - mes (gt gt) gt gt xc (0,1,3,3,4,5,10,11,23) Espaciados ¿Cómo puedo hacer esto en R gt Qué alternativas tengo que filtrar el ruido de Y. gt gt Gracias de antemano por la ayuda gt gt gt gt gt Luca Cerone gt gt Tel: 34 692 06 71 28 gt Skype: luca. cerone Gt gt gt lista de correo electrónico oculta gt stat. ethz. ch/mailman/listinfo/r-help gt POR FAVOR lea la guía de publicación gt R-project. org/posting-guide. html gt y proporcione comentario, mínimo, autónomo , Código reproducible. Gt alternativa versión HTML eliminado Gracias Jim, esto ayuda parcialmente (yo no era consciente de las funciones que utilizó, que es bueno saber). Tengo dos dudas sobre su solución. En primer lugar, en mi aplicación x es grande 250000 elementos y tengo que repetir esto para 1000 diferentes vectores y además el rango de x es mucho mayor que los datos que tengo (es decir, las lagunas constituyen la mayoría del intervalo), Pero las x son quotlocallyquot denso. También no estoy seguro si la interpolación lineal me dejó tener los resultados que espero. En su solución, los datos suavizados parecen pasar por todos mis puntos originales, que no es lo que yo esperaría de un procedimiento de suavizado que elimina un poco de ruido de los datos. ¿Tienes alguna otra sugerencia? Nuevamente gracias por tu ayuda Luca Luca Cerone Tel: 34 692 06 71 28 Skype: luca. cerone El jueves, 27 de marzo de 2014 a las 8:17 PM, jim holtman lthidden email gt escribió: gt Here is one camino. Tomé sus datos y apliqué la función aprox para obtener gt valores uniformemente espaciados y luego filtrar para crear una media móvil de una ventana gt de tamaño 5. gt gt gt set. seed (1) gt xc (0,1, 3,3.4 (X, y) gt gt crear un espaciado uniforme usando la función aproximada gt pasos lt-seq (min (x), max (x), longitud 100) gt newData lt - aprox (x, y, xout pasos) gt gt use el filtro para el promedio de gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt tt Gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt ¿Qué es el problema que usted está tratando de resolver gt Dime lo que quieres hacer, no cómo usted querer hacerlo. Gt gt gt miércoles, 27 de marzo de 2014 a las 12:35 PM, Luca Cerone lthidden correo electrónico gt escribió: gtgt gtgt Queridos todos, gtgt Tengo un vector xy un vector y f (x). Gtgt, p. Gtgt gtgt gtgt gtgt Me gustaría aplicar una media móvil a y, sabiendo que los valores de x gtgt no son unifor - mes (gtgt gtgt) gtgt gtgt xc (0,1, 3,3,4, 5, 10, 11,23) Espaciados ¿Cómo puedo hacer esto en R gtgt Qué alternativas tengo que filtrar el ruido de Y. gtgt gtgt Gracias de antemano por la ayuda gtgt gtgt gtgt gtgt gtgt gtgt Luca Cerone gtgt gtgt Tel: 34 692 06 71 28 gtgt Skype: luca. cerone Gtgt gtgt gtgt lista de correo electrónico oculta gtgt stat. ethz. ch/mailman/listinfo/r-help gtgt POR FAVOR, lea la guía de publicación gtgt R-project. org/posting-guide. html gtgt y proporcione comentarios, mínimos, autónomos , Código reproducible. Gt gt Si usted no necesita un promedio corriente, hay otros smoothers usted puede mirar. Pruebe supsmu: gt set. seed (1) gt xc (0,1, 3,3,4, 5,10,11,23) gt y x2 rnorm (longitud (x)) gt rbind (x, y), 1, 2, 3 , 4, 5, 6, 7 x 0,0000000 1.000000 3.000000 3.40000 5.00000 10.00000 11.2300 y -0.6264538 1.183643 8.164371 13.15528 25.32951 99.17953 126.6003 gt gt trazar los datos gt trazado (x, y, tipo o, lwd 6) gt gt líneas (supsmu (X, y, span .1) x 1 0,00 1,00 3,00 3,40 5,00 10,00 11,23 y 1 -3,106279 1,953217 12,072208 17,009572 32,880143 103,671955 121,086741 Jim Holtman Data Munger Guru ¿Cuál es el problema que estás tratando de resolver? Dime lo que quieres hacer, no cómo quieres hacerlo. El viernes, 28 de marzo de 2014 a las 4:48, Luca Cerone lthidden correo electrónico gt escribió: gt Gracias Jim, gt esto ayuda parcialmente (yo no era consciente de las funciones que utilizó, que gt son buenos saber). Gt Tengo dos dudas sobre su solución. Gt En primer lugar, en mi aplicación x es grande 250000 elementos y tengo gt para repetir esto para 1000 vectores y diferentes además el rango de x gt es mucho mayor que los datos que tengo gt (es decir, las lagunas constituyen la mayoría de El intervalo), pero los gt xs son quotlocallyquot denso. Gt gt También no estoy seguro de si la interpolación lineal me dejó tener los resultados gt espero. En su solución, los datos suavizados parecen pasar gt a través de todos mis puntos originales, gt que no es lo que yo esperaría de un procedimiento de suavizado que gt elimina un poco de ruido de los datos. Gt gt ¿Tiene alguna otra sugerencia gt otra vez gracias por su ayuda gt Luca gt Luca Cerone gt gt Tel: 34 692 06 71 28 gt skype: luca. cerone gt gt gt El Jue, Marzo 27, 2014 at 8:17 PM, Jim holtman lthidden correo electrónico gt escribió: gt gt Aquí está una forma. Tomé sus datos y apliqué la función aprox para obtener gt gt valores uniformemente espaciados y luego filtrar para crear una media móvil de una ventana gt gt de tamaño 5. gt gt gt gt gt gt gt gt set. seed (1) gt gt xc (X, y) gt gt gt gt crear un espaciado uniforme utilizando la función aprox gt gt pasos ltseq (Min (x), max (x), longitud 100) gt gt nuevoDatos lt - aprox (x, y, x pasos) gt gt gt gt Gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, gt, Data Munger Guru gt gt gt gt ¿Cuál es el problema que está tratando de resolver gt gt Dime lo que quieres hacer, no cómo quieres hacerlo. Gt gtgt Querido todos, gt gtgt Tengo un vector xy un vector y f (x). Gt gtgt, p. Gt gtgt gt gtgt gt gtgt gt gtgt gt gtgt Gt gtgt gt gtgt gt gtgt gt gtgt gtgt gtgt gt gt gtgt Me gustaría aplicar una media móvil a y, sabiendo que la x (x, x, Los valores gt gtgt no están espaciados uniformemente. ¿Cómo puedo hacer esto en R gt gtgt Qué alternativas tengo que filtrar el ruido de Y. gt gtgt gt gtgt Gracias de antemano por la ayuda gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt gt hr gt gtgt Luca Cerone gt gtgt gt gtgt Tel: 34 692 06 71 28 gt gtgt Lista de correo electrónico oculta gt gtgt stat. ethz. ch/mailman/listinfo/r-help gt gtgt Por favor, lea la guía de publicación gt gtgt R-proyecto. Org / posting-guide. html gt gtgt y proporciona código comentado, mínimo, autónomo y reproducible. Gt gt gt gt gt alternativa versión HTML deletedR Media móvil no uniformes Vectores Aquí está una forma. Tomé sus datos y apliqué la función 39approx39 para obtener valores espaciados uniformemente y luego 39filter39 para crear un promedio móvil de una ventana de tamaño 5. set. seed (1) xc (0,1, 3,3.4, 5, 10, 11.23 ) Y x2 rnorm (longitud (x)) rbind (x, y) crea un espaciado de 39even39 usando los pasos de función 39approx39 ltseq (min (x), max (x), longitud 100) newData lt - approx (x, Xout steps) use el filtro para la media corriente avg lt - filter (newData36y, rep (1/5, 5)) traza el gráfico de datos (x, y, tipo 39o39) líneas (newData36x, avg, col 39red39) Jim Holtman Data Munger Guru ¿Cuál es el problema que estás tratando de resolver? Dime lo que quieres hacer, no cómo quieres hacerlo. El jueves, 27 de marzo de 2014 a las 12:35 PM, Luca Cerone escribió: Queridos todos, Tengo un vector xy un vector y f (x). p. ej. X c (0,1, 3,3,4, 5,10,11,23) y x2 rnorm (longitud (x)) Me gustaría aplicar una media móvil a y, sabiendo que los valores de x no están uniformemente espaciados. ¿Cómo puedo hacer esto en R Qué alternativas tengo que filtrar el ruido de Y Gracias de antemano por la ayuda Tel: 34 692 06 71 28 Skype: luca. cerone r-helpr-project. org lista de correo stat. ethz. ch / Mailman / listinfo / r-help POR FAVOR lea la guía de publicación R-project. org/posting-guide. html y proporcione código comentado, mínimo, autónomo y reproducible. Gracias Jim, esto ayuda parcialmente (yo no estaba enterado de las funciones que usted utilizó, que es bueno saber). Tengo dos dudas sobre su solución. En primer lugar, en mi aplicación x es grande 250000 elementos y tengo que repetir esto para 1000 vectores y diferentes además el rango de x es mucho mayor que los datos que tengo (es decir, las lagunas constituyen la mayoría del intervalo), Pero las x son quotlocallyquot denso. También no estoy seguro si la interpolación lineal me dejó tener los resultados que espero. En su solución, los datos suavizados parecen pasar por todos mis puntos originales, que no es lo que yo esperaría de un procedimiento de suavizado que elimina un poco de ruido de los datos. ¿Tienes alguna otra sugerencia? Nuevamente gracias por tu ayuda Luca Luca Cerone Tel: 34 692 06 71 28 Skype: luca. cerone El jueves, 27 de marzo de 2014 a las 20:17, jim holtman escribió: Here is one way. Tomé sus datos y apliqué la función 39approx39 para obtener valores espaciados uniformemente y luego 39filter39 para crear un promedio móvil de una ventana de tamaño 5. set. seed (1) xc (0,1, 3,3.4, 5, 10, 11.23 ) Y x2 rnorm (longitud (x)) rbind (x, y) crea un espaciado de 39even39 usando los pasos de función 39approx39 ltseq (min (x), max (x), longitud 100) newData lt - approx (x, Xout steps) use el filtro para la media corriente avg lt - filter (newData36y, rep (1/5, 5)) traza el gráfico de datos (x, y, tipo 39o39) líneas (newData36x, avg, col 39red39) Jim Holtman Data Munger Guru ¿Cuál es el problema que estás tratando de resolver? Dime lo que quieres hacer, no cómo quieres hacerlo. El jueves, 27 de marzo de 2014 a las 12:35 PM, Luca Cerone escribió: Queridos todos, Tengo un vector xy un vector y f (x). p. ej. X c (0,1, 3,3,4, 5,10,11,23) y x2 rnorm (longitud (x)) Me gustaría aplicar una media móvil a y, sabiendo que los valores de x no están uniformemente espaciados. ¿Cómo puedo hacer esto en R Qué alternativas tengo que filtrar el ruido de Y Gracias de antemano por la ayuda Tel: 34 692 06 71 28 Skype: luca. cerone R-help en r-project. org lista de correo stat. ethz. ch / mailman / listinfo / r-help POR FAVOR lea la guía de publicación R-project. org/posting-guide. html y proporcione código comentado, mínimo, autónomo y reproducible. Si no necesita un promedio de trabajo 39, hay otros 39 que pueden ver. Pruebe 39supsmu39: set. seed (1) xc (0,1, 3,3,4, 5, 10, 11,23) y x2 rnorm (longitud (x)) rbind (x, y), 1, 2, 3, 4, 5 , 6, 7 x 0,0000000 1.000000 3.000000 3.40000 5.00000 10.00000 11.2300 y -0.6264538 1.183643 8.164371 13.15528 25.32951 99.17953 126.6003 trazar el gráfico de datos (x, y, tipo 39o39, lwd 6) líneas (supsmu (x, y, span .1), col 39red39, lwd 2) 36x 1 0.00 1.00 3.00 3.40 5.00 10.00 11.23 36y 1 -3.106279 1.953217 12.072208 17.009572 32.880143 103.671955 121.086741 Jim Holtman Data Munger Guru ¿Cuál es el problema que usted está tratando de resolver Dígame lo que quiere hacer, no cómo usted querer hacerlo. El Viernes, 28 de Marzo de 2014 a las 4:48 AM, Luca Cerone escribió: Gracias Jim, esto ayuda en parte (yo no estaba al tanto de las funciones que utilizó, que es bueno saber). Tengo dos dudas sobre su solución. En primer lugar, en mi aplicación x es grande 250000 elementos y tengo que repetir esto para 1000 vectores y diferentes además el rango de x es mucho mayor que los datos que tengo (es decir, las lagunas constituyen la mayoría del intervalo), Pero las x son quotlocallyquot denso. También no estoy seguro si la interpolación lineal me dejó tener los resultados que espero. En su solución, los datos suavizados parecen pasar por todos mis puntos originales, que no es lo que yo esperaría de un procedimiento de suavizado que elimina un poco de ruido de los datos. ¿Tienes alguna otra sugerencia? Nuevamente gracias por tu ayuda Luca Luca Cerone Tel: 34 692 06 71 28 Skype: luca. cerone El jueves, 27 de marzo de 2014 a las 20:17, jim holtman escribió: Here is one way. Tomé sus datos y apliqué la función 39approx39 para obtener valores espaciados uniformemente y luego 39filter39 para crear un promedio móvil de una ventana de tamaño 5. set. seed (1) xc (0,1, 3,3.4, 5, 10, 11.23 ) Y x2 rnorm (longitud (x)) rbind (x, y) crea un espaciado de 39even39 usando los pasos de función 39approx39 ltseq (min (x), max (x), longitud 100) newData lt - approx (x, Xout steps) use el filtro para la media corriente avg lt - filter (newData36y, rep (1/5, 5)) traza el gráfico de datos (x, y, tipo 39o39) líneas (newData36x, avg, col 39red39) Jim Holtman Data Munger Guru ¿Cuál es el problema que estás tratando de resolver? Dime lo que quieres hacer, no cómo quieres hacerlo. El jueves, 27 de marzo de 2014 a las 12:35 PM, Luca Cerone escribió: Queridos todos, Tengo un vector xy un vector y f (x). p. ej. X c (0,1, 3,3,4, 5,10,11,23) y x2 rnorm (longitud (x)) Me gustaría aplicar una media móvil a y, sabiendo que los valores de x no están uniformemente espaciados. ¿Cómo puedo hacer esto en R ¿Qué alternativas tengo para filtrar el ruido de Y Gracias de antemano por la ayuda Tel: 34 692 06 71 28 Skype: luca. cerone r-helpr-project. org lista de correo stat. ethz. ch / Mailman / listinfo / r-help POR FAVOR lea la guía de publicación R-project. org/posting-guide. html y proporcione código comentado, mínimo, autónomo y reproducible. Me gustaría realizar un filtro de media móvil o equivalente a Datos de la forma que se muestra a continuación en amarillo, con el fin de establecer la comparación con los datos azules. Los datos azules se muestrean uniformemente. Sin embargo, los datos amarillos se muestrearon discontinuamente con valores múltiples en determinados momentos. ¿Se puede lograr esto utilizando el comando matlab filter para realizar un filtro de media móvil, usando ponderaciones para tener en cuenta la naturaleza intermitente de los datos? De lo contrario, ¿cómo se pueden suavizar estos datos con eficacia para dar la misma resolución de tiempo que los datos azules que he logrado Use el comando suave para dar cuenta de los vacíos en los datos promediando los valores duplicados y especificando las ubicaciones x correspondientes para la operación de suavizado: ¿Es esta la mejor aproximación que experimentaría con un filtro de paso bajo como primera aproximación. Puede darle información sobre su señal. El siguiente paso después del filtro de paso bajo, o si un filtro de paso bajo no hace lo que quiere, sería el filtro Savtizky-Golay (la función sgolayfilt). Todo el procesamiento de la señal requiere experimentación, por lo que con un poco de ajuste, el filtro Savitzky-Golay debe hacer lo que quiera. Enlace directo a esta respuesta: Cancelar Copiar al Portapapeles Una media móvil lineal simple se puede hacer con conv (), que es lo mismo que sgolayfilt () si pasas sgolayfilt un orden de 1. Lowess, en el Curve Fitting Toolbox creo ( Que no tengo) es una versión de una media móvil que es más robusta a los valores atípicos, que parecen afectar a sus datos una cantidad justa. 0 Comentarios Enlace directo a esta respuesta: Cancelar Copiar al Portapapeles Id utilice interp1 para obtener los datos amarillos a un espaciado uniforme, luego utilice la función de movimiento Aslak Grinsteds para obtener la media móvil. Selecciona tu pais

No comments:

Post a Comment