Rubén Gómez Antolí
2012-Feb-02 23:19 UTC
[R-es] Modelo senoidal de datos temporales de radiación y prueba de Thom
Hola a todos: Estoy intentado realizar un modelo senoidal de unos datos de radiación solar con el fin de afrontar el relleno de la serie y aplicar la prueba de Thom para verificar su homogeneidad [0]. De momento me encuentro con los siguientes problemas: 1- ¿Existe la prueba de Thom en R? ¿O debo crearme mi propia función? 2- Para la realización del modelo senoidal estoy siguiendo los pasos que marcan en este texto: http://www.itl.nist.gov/div898/handbook/eda/section4/eda4253.htm pero me encuentro con los siguientes problemas: 1a - La serie que estoy utilizando tiene valores perdidos (ND) y hay varias funciones, como spectrum o lag.plot, que no se pueden utilizar. Yo los he reconvertido a 0, lo que no se si sera la correcto o me puede desvirtuar el modelo. 1b - No soy capaz de encontrar como obtener la gráfica de demodulación compleja, tanto de fase [1] como de amplitud [2], en R. He buscado y lo único que he encontrado es una referencia a la función «demod» en S dentro de un extracto del libro de Venables y Ripley. 1c - ¿Estoy yo muy despistado o el «run-sequence plot» es una gráfica de la función, en este caso una línea temporal con los años en el eje X y el valor de radiación en el Y? Por ahora creo que es todo. Gracias por adelantado. Salud y Revolución. Lobo. [0] http://www.ub.edu/gc/Documentos/Sevilla_SunDu.pdf [1] http://www.itl.nist.gov/div898/handbook/eda/section3/compdeph.htm [2] http://www.itl.nist.gov/div898/handbook/eda/section3/compdeam.htm [3] http://www.itl.nist.gov/div898/handbook/eda/section3/runseqpl.htm -- Libertad es poder elegir en cualquier momento. Ahora yo elijo GNU/Linux, para no atar mis manos con las cadenas del soft propietario. --------- Desde El Ejido, en Almería, usuario registrado Linux #294013 http://www.counter.li.org
Muy buenas a todos, estoy haciendo un grafico de barras, barplot y tengo el siguiente problemilla. Tengo un vector leyenda y otro de colores colores<-c("sienna4", "orange", "red", "steelblue") leyenda<-c("2007", "2008","2009","2010") Adjunto archivo con el grafico que me sale, y el problema es el siguiente: los colores del vector no se corresponden con los de la leyenda, no se como los asigna, pero parece un poco al azar. ¿como puedo hacer para asegurarme que cada color de la leyenda se corresponderá con un año determinado? Gracias El script del grafico es: barplot(table(datos1$año,datos$rango), beside=T, legend.text=leyenda,args.legend=list(x="topleft"),col=colores) ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/f65a6cd8/attachment.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: barplot.pdf Type: application/pdf Size: 13379 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/f65a6cd8/attachment.pdf>
Hola, las etiquetas de la leyenda se deben corresponder con las filas de la matriz que dibujas con barplot. Aunque no están tus datos, dado que la matriz que dibujas es: table(datos1$año,datos$rango) tiene toda la pinta de tener por filas los años. Así, el primer color se corresponde con el primer año y el resto sucesivamente. Por tanto, a 2007 le corresponde "sienna4", a 2008 "orange", etc Este sería el orden de los colores. Si no dibuja lo que quieres quizás es porque la matriz que dibujas no es la adecuada, pero sin datos para recrear la gráfica es difícil saberlo. Espero que te aclare algo. Un saludo, Jorge El Friday 03 February 2012 13:02:10 jose cebrian escribió:> Muy buenas a todos, > estoy haciendo un grafico de barras, barplot y tengo el siguiente > problemilla. Tengo un vector leyenda y otro de colores > > colores<-c("sienna4", "orange", "red", "steelblue") > leyenda<-c("2007", "2008","2009","2010") > > Adjunto archivo con el grafico que me sale, > y el problema es el siguiente: > los colores del vector no se corresponden con los de la leyenda, no se como > los asigna, pero parece un poco al azar. ¿como puedo hacer para asegurarme > que cada color de la leyenda se corresponderá con un año determinado? > Gracias > El script del grafico es: > > > > barplot(table(datos1$año,datos$rango), beside=T, > legend.text=leyenda,args.legend=list(x="topleft"),col=colores)
Mi tabla es esta rc rango año (23,45] (45,70] (70,90] (90,181] 2007 2 624 632 233 2008 NA 559 339 94 2009 NA 762 1525 702 Puede tener razon Jaume.Hice la leyenda con solamente 3 años (estaba con 4 porque para otros datos tengo 4 años) y tampoco me respeta el orden. ¿Será por los NAs del primer intervalo de tallas ? Adjunto nuevo gráfico con colores<-c("sienna4", "orange", "red", "steelblue") leyenda2<-c("2007", "2008","2009") barplot (rc, xlab="Rango de tallas (cm)",col=colores, beside = T , legend.text=leyenda2,args.legend=list(x="topright")) De todas formas, igual hay alguna forma de asignarle el color a un año ________________________________ De: Jorge Virto <jorge.virto en ehu.es> Para: "r-help-es en r-project.org" <r-help-es en r-project.org> Enviado: Viernes 3 de febrero de 2012 13:49 Asunto: Re: [R-es] Colores, leyenda Hola, las etiquetas de la leyenda se deben corresponder con las filas de la matriz que dibujas con barplot. Aunque no están tus datos, dado que la matriz que dibujas es: table(datos1$año,datos$rango) tiene toda la pinta de tener por filas los años. Así, el primer color se corresponde con el primer año y el resto sucesivamente. Por tanto, a 2007 le corresponde "sienna4", a 2008 "orange", etc Este sería el orden de los colores. Si no dibuja lo que quieres quizás es porque la matriz que dibujas no es la adecuada, pero sin datos para recrear la gráfica es difícil saberlo. Espero que te aclare algo. Un saludo, Jorge El Friday 03 February 2012 13:02:10 jose cebrian escribió:> Muy buenas a todos, > estoy haciendo un grafico de barras, barplot y tengo el siguiente > problemilla. Tengo un vector leyenda y otro de colores > > colores<-c("sienna4", "orange", "red", "steelblue") > leyenda<-c("2007", "2008","2009","2010") > > Adjunto archivo con el grafico que me sale, > y el problema es el siguiente: > los colores del vector no se corresponden con los de la leyenda, no se como > los asigna, pero parece un poco al azar. ¿como puedo hacer para asegurarme > que cada color de la leyenda se corresponderá con un año determinado? > Gracias > El script del grafico es: > > > > barplot(table(datos1$año,datos$rango), beside=T, > legend.text=leyenda,args.legend=list(x="topleft"),col=colores)_______________________________________________ R-help-es mailing list R-help-es en r-project.org https://stat.ethz.ch/mailman/listinfo/r-help-es ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/79059bda/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: barplot.pdf Type: application/pdf Size: 13664 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/79059bda/attachment-0001.pdf>
Hola otra vez, prueba a poner sólo 3 colores para los 3 años (y no los 4 colores), es decir, colores<-c("sienna4", "orange", "red") Un saludo, Jorge El Friday 03 February 2012 14:01:20 escribió:> Mi tabla es esta > > rc > > rango > año (23,45] (45,70] (70,90] (90,181] > 2007 2 624 632 233 > 2008 NA 559 339 94 > 2009 NA 762 1525 702 > > > > Puede tener razon Jaume.Hice la leyenda con solamente 3 años (estaba con > 4 porque para otros datos tengo 4 años) y tampoco me respeta el orden. > ¿Será por los NAs del primer intervalo de tallas ? > > > Adjunto nuevo gráfico con > colores<-c("sienna4", "orange", "red", "steelblue") > leyenda2<-c("2007", "2008","2009") > > barplot (rc, > xlab="Rango de tallas (cm)",col=colores, > beside = T , legend.text=leyenda2,args.legend=list(x="topright")) > > De todas formas, igual hay alguna forma de asignarle el color a un año > > > ________________________________ > De: Jorge Virto <jorge.virto en ehu.es> > Para: "r-help-es en r-project.org" <r-help-es en r-project.org> > Enviado: Viernes 3 de febrero de 2012 13:49 > Asunto: Re: [R-es] Colores, leyenda > > Hola, > > las etiquetas de la leyenda se deben corresponder con las filas de la > matriz que dibujas con barplot. Aunque no están tus datos, dado que la > matriz que dibujas es: > > table(datos1$año,datos$rango) > > tiene toda la pinta de tener por filas los años. Así, el primer color se > corresponde con el primer año y el resto sucesivamente. Por tanto, a 2007 > le corresponde "sienna4", a 2008 "orange", etc Este sería el orden de los > colores. Si no dibuja lo que quieres quizás es porque la matriz que dibujas > no es la adecuada, pero sin datos para recrear la gráfica es difícil > saberlo. > > Espero que te aclare algo. > > Un saludo, > > Jorge > > El Friday 03 February 2012 13:02:10 jose cebrian escribió: > > Muy buenas a todos, > > estoy haciendo un grafico de barras, barplot y tengo el siguiente > > problemilla. Tengo un vector leyenda y otro de colores > > > > colores<-c("sienna4", "orange", "red", "steelblue") > > leyenda<-c("2007", "2008","2009","2010") > > > > Adjunto archivo con el grafico que me sale, > > y el problema es el siguiente: > > los colores del vector no se corresponden con los de la leyenda, no se > > como los asigna, pero parece un poco al azar. ¿como puedo hacer para > > asegurarme que cada color de la leyenda se corresponderá con un año > > determinado? Gracias > > El script del grafico es: > > > > > > > > barplot(table(datos1$año,datos$rango), beside=T, > > legend.text=leyenda,args.legend=list(x="topleft"),col=colores) > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es
A ver que te parece esto: colores<-c("sienna4", "orange", "red") leyenda2<-c("2007", "2008","2009") barplot (rc[,c(2:5)] ,beside = T ,col=colores ,legend.text=leyenda2 ,xlab="Rango de tallas (cm)" ) Te adjunto el workspace con tu tabla cargada en forma de matriz y el gráfico. Como dice Jorge Virto se trata de poner solo 3 colores para 3 años. Si las longitudes son diferentes recicla el vector corto y se desordena. Como ves los NA no los tiene en cuenta y deja espacios sin columna. Espero que te sirva. jaume El 3 de febrero de 2012 13:02, jose cebrian <pepeceb en yahoo.es> escribió:> > > Muy buenas a todos, > estoy haciendo un grafico de barras, barplot y tengo el siguiente > problemilla. > Tengo un vector leyenda y otro de colores > > colores<-c("sienna4", "orange", "red", "steelblue") > leyenda<-c("2007", "2008","2009","2010") > > Adjunto archivo con el grafico que me sale, > y el problema es el siguiente: > los colores del vector no se corresponden con los de la leyenda, no se > como los asigna, pero parece un poco al azar. > ¿como puedo hacer para asegurarme que cada color de la leyenda se > corresponderá con un año determinado? > Gracias > El script del grafico es: > > > > barplot(table(datos1$año,datos$rango), beside=T, > legend.text=leyenda,args.legend=list(x="topleft"),col=colores) > > > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Jaume Tormo Blanes IMEM Ramon Margalef. Carretera San Vicente del Raspeig s/n 03690 San Vicente del Raspeig - Alicante www.ua.es acercad.wordpress.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/f2ffda76/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: workspace.RData Type: application/octet-stream Size: 226 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/f2ffda76/attachment-0001.obj> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: grafico.png Type: image/png Size: 8525 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/f2ffda76/attachment-0001.png>
Perfecto. Me sobra un valor en el vector año, leyenda nueva y listo. Para el vector colores tambien hago otra leyenda, colores2, porque la de cuatro colores la necesito para otros datos. Cuando no use rc empleo las otras leyendas Gracias Jaume, Pelayo, Jorge, y a los demas por leerme saludos jose luis Finalmente quedó asi esta parte del grafico (adjuntado) colores2<-c("sienna4", "orange", "red") leyenda2<-c("2007", "2008","2009") barplot (rc, ylab="Nº individuos muestreados", #para fijar el ylim tengo que ver el valor máx de ejemplares ,cex.axis=0.7,cex=0.7,main="RASCO", xlab="Rango de tallas (cm)",col=colores2, beside = T , legend.text=leyenda2,args.legend=list(x="topright")) ________________________________ De: Jaume Tormo <jautorbla en gmail.com> Para: jose cebrian <pepeceb en yahoo.es> CC: "r-help-es en r-project.org" <r-help-es en r-project.org> Enviado: Viernes 3 de febrero de 2012 14:52 Asunto: Re: [R-es] Colores, leyenda A ver que te parece esto: colores<-c("sienna4", "orange", "red") leyenda2<-c("2007", "2008","2009") barplot (rc[,c(2:5)] ,beside = T ,col=colores ,legend.text=leyenda2 ,xlab="Rango de tallas (cm)" ) Te adjunto el workspace con tu tabla cargada en forma de matriz y el gráfico. Como dice Jorge Virto se trata de poner solo 3 colores para 3 años. Si las longitudes son diferentes recicla el vector corto y se desordena. Como ves los NA no los tiene en cuenta y deja espacios sin columna. Espero que te sirva. jaume El 3 de febrero de 2012 13:02, jose cebrian <pepeceb en yahoo.es> escribió:> > >Muy buenas a todos, > estoy haciendo un grafico de barras, barplot y tengo el siguiente problemilla. >Tengo un vector leyenda y otro de colores > >colores<-c("sienna4", "orange", "red", "steelblue") >leyenda<-c("2007", "2008","2009","2010") > >Adjunto archivo con el grafico que me sale, >y el problema es el siguiente: >los colores del vector no se corresponden con los de la leyenda, no se como los asigna, pero parece un poco al azar. >¿como puedo hacer para asegurarme que cada color de la leyenda se corresponderá con un año determinado? >Gracias >El script del grafico es: > > > >barplot(table(datos1$año,datos$rango), beside=T,legend.text=leyenda,args.legend=list(x="topleft"),col=colores)> > > >_______________________________________________ >R-help-es mailing list >R-help-es en r-project.org >https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Jaume Tormo Blanes IMEM Ramon Margalef. Carretera San Vicente del Raspeig s/n 03690 San Vicente del Raspeig - Alicante www.ua.es acercad.wordpress.com ------------ próxima parte ------------ Se ha borrado un adjunto en formato HTML... URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/2d2c7772/attachment-0001.html> ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: barplot.pdf Type: application/pdf Size: 18629 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120203/2d2c7772/attachment-0001.pdf>
Carlos Ortega
2012-Feb-03 19:41 UTC
[R-es] Modelo senoidal de datos temporales de radiación y prueba de Thom
Hola Rubén (¿Lobo?), Efectivamente la función demod estaba presente en S-Plus [1], y formaba parte del paquete VR (Venables and Ripley) que luego pasó a ser MASS (Modern Applied Statistics with S), pero en R esa función ya no se incluyó aunque se creó su equivalente "spec" (Spectral Density Estimation) aunque ya comentas que no te vale. Entiendo que no te es útil porque tu serie es univariada y la función por tanto no devuelve la fase. ¿Es así?. En cuanto al test de Thom, he visto en el paper que referencias que se trata de un test de rachas, que tampoco he encontrado en R. Sí que está el test de rachas: función runs.test (paquete lawstat). Y sí, el "Run sequence Test" es una forma un tanto peculiar de indicar el tipo de gráfico que indicas. Que por cierto, he sido incapaz de encontrar como tal en el libro de Chambers... [1]: Todavía se puede encontrar los volúmenes que formaban los manuales de usuario de S-Plus. En este segundo se trata el uso de esta función (página 281 del pdf): http://www.uni-koeln.de/themen/statistik/software/s/v70/statman2.pdf Saludos, Carlos Ortega www.qualityexcellence.es El 3 de febrero de 2012 00:19, Rubén Gómez Antolí <lobo@mucharuina.com>escribió:> Hola a todos: > > Estoy intentado realizar un modelo senoidal de unos datos de radiación > solar con el fin de afrontar el relleno de la serie y aplicar la prueba de > Thom para verificar su homogeneidad [0]. > > De momento me encuentro con los siguientes problemas: > > 1- ¿Existe la prueba de Thom en R? ¿O debo crearme mi propia función? > > 2- Para la realización del modelo senoidal estoy siguiendo los pasos que > marcan en este texto: > > http://www.itl.nist.gov/**div898/handbook/eda/section4/**eda4253.htm<http://www.itl.nist.gov/div898/handbook/eda/section4/eda4253.htm> > > pero me encuentro con los siguientes problemas: > > 1a - La serie que estoy utilizando tiene valores perdidos (ND) y hay > varias funciones, como spectrum o lag.plot, que no se pueden utilizar. Yo > los he reconvertido a 0, lo que no se si sera la correcto o me puede > desvirtuar el modelo. > > 1b - No soy capaz de encontrar como obtener la gráfica de demodulación > compleja, tanto de fase [1] como de amplitud [2], en R. He buscado y lo > único que he encontrado es una referencia a la función «demod» en S dentro > de un extracto del libro de Venables y Ripley. > > 1c - ¿Estoy yo muy despistado o el «run-sequence plot» es una gráfica de > la función, en este caso una línea temporal con los años en el eje X y el > valor de radiación en el Y? > > Por ahora creo que es todo. > > Gracias por adelantado. > > Salud y Revolución. > > Lobo. > > [0] http://www.ub.edu/gc/**Documentos/Sevilla_SunDu.pdf<http://www.ub.edu/gc/Documentos/Sevilla_SunDu.pdf> > > [1] http://www.itl.nist.gov/**div898/handbook/eda/section3/**compdeph.htm<http://www.itl.nist.gov/div898/handbook/eda/section3/compdeph.htm> > > [2] http://www.itl.nist.gov/**div898/handbook/eda/section3/**compdeam.htm<http://www.itl.nist.gov/div898/handbook/eda/section3/compdeam.htm> > > [3] http://www.itl.nist.gov/**div898/handbook/eda/section3/**runseqpl.htm<http://www.itl.nist.gov/div898/handbook/eda/section3/runseqpl.htm> > -- > Libertad es poder elegir en cualquier momento. Ahora yo elijo GNU/Linux, > para no atar mis manos con las cadenas del soft propietario. > --------- > Desde El Ejido, en Almería, usuario registrado Linux #294013 > http://www.counter.li.org > > ______________________________**_________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/**listinfo/r-help-es<https://stat.ethz.ch/mailman/listinfo/r-help-es> >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]
Rubén Gómez Antolí
2012-Feb-07 22:56 UTC
[R-es] Modelo senoidal de datos temporales de radiación y prueba de Thom
Hola Carlos: Ante todo, gracias por la respuesta y perdón por el retraso en responder, llevo unos días que no estoy en lo que estoy. :^\ El 03/02/12 20:41, Carlos Ortega escribió:> Hola Rubén (¿Lobo?),Cualquiera de las dos, una vez leí que Rubén significa lobo, no se si sera cierto; si lo es son curiosidades de la vida que te pongan un apodo que venga a ser el significado de tu nombre.> Efectivamente la función demod estaba presente en S-Plus [1], y formaba > parte del paquete VR (Venables and Ripley) que luego pasó a ser MASS > (Modern Applied Statistics with S), pero en R esa función ya no se > incluyó aunque se creó su equivalente "spec" (Spectral Density > Estimation) aunque ya comentas que no te vale.No funciona con mis datos ya que estos tienen valores ND, que, en definitiva, es el problema con el que me enfrento.> Entiendo que no te es > útil porque tu serie es univariada y la función por tanto no devuelve la > fase. ¿Es así?.Pues me temo que no he sido capaz de llegar tan lejos, me quedo parado al intentar obtener un valor para la amplitud. Si sustituyo los valores ND por 0, sospecho que esto se encuentra muy lejos de lo correcto, se puede dibujar la serie, que si es univariada, con spectrum y obtengo el valor de la frecuencia. El siguiente paso es obtener la amplitud y para ello necesitaba esa gráfica de demodulación compleja (¿es la traducción correcta?) para la amplitud. Cuando me puse a buscar vi que tampoco era capaz de obtener la gráfica de fase. El caso es que estoy siguiendo el ejemplo de NDIST paso a paso y también me quedo ahí. He encontrado algo referente a plot.spec pero me tira un error: plot.spec(D.NIST$Datos) Error: $ operator is invalid for atomic vectors (Adjunto datos y guión R por si alguien quiere jugar con eso) Por el momento me he estrellado por este camino, tengo un plan B para crear el modelo, ayer encontré esto: http://engrwww.usask.ca/oldsite/societies/csae/protectedpapers/c0628.pdf que utiliza FFT para sacar el modelo senoidal. Si tampoco funciona me queda un plan C, Barrera Escoda [0] (pág. 21, 22) crea un sistema de ecuaciones lineales a partir de la ecuación del modelo senoidal y, aunque tendré que desempolvar mis apuntes de matemáticas y echar mano de alguno de los libros que tengo por ahí (¡mi amigo Kreyszig!), parece factible de realizar.> En cuanto al test de Thom, he visto en el paper que referencias que se > trata de un test de rachas, que tampoco he encontrado en R. Sí que está > el test de rachas: función runs.test (paquete lawstat).Le echaré un vistazo, de todas formas la prueba de Thom no parece demasiado difícil de implementar.> Y sí, el "Run sequence Test" es una forma un tanto peculiar de indicar > el tipo de gráfico que indicas. Que por cierto, he sido incapaz de > encontrar como tal en el libro de Chambers...Bueno, menos mal que iba atinado en algo. ^_^> [1]: Todavía se puede encontrar los volúmenes que formaban los manuales > de usuario de S-Plus. En este segundo se trata el uso de esta función > (página 281 del pdf): > http://www.uni-koeln.de/themen/statistik/software/s/v70/statman2.pdfJe, filtros paso-bajos, fases, frecuencias... ¿esto es electrónica o estadística? Porque me suena mucho a lo primero, y me suena que tengo muchas cosas que repasar, ¡ay!> Saludos, > Carlos Ortega > www.qualityexcellence.es <http://www.qualityexcellence.es> > > El 3 de febrero de 2012 00:19, Rubén Gómez Antolí <lobo en mucharuina.com > <mailto:lobo en mucharuina.com>> escribió: > > [...]> 2- Para la realización del modelo senoidal estoy siguiendo los pasos > que marcan en este texto: > > http://www.itl.nist.gov/__div898/handbook/eda/section4/__eda4253.htm > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es <http://www.qualityexcellence.es>Un saludo y gracias de nuevo por la ayuda. Salud y Revolución. Lobo. [0] http://zucaina.net/Publicaciones/barrera-dea.pdf -- Libertad es poder elegir en cualquier momento. Ahora yo elijo GNU/Linux, para no atar mis manos con las cadenas del soft propietario. --------- Desde El Ejido, en Almería, usuario registrado Linux #294013 http://www.counter.li.org ------------ próxima parte ------------ A non-text attachment was scrubbed... Name: Datos_NIST.dat Type: application/ms-tnef Size: 1405 bytes Desc: no disponible URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120207/89a678b3/attachment.bin> ------------ próxima parte ------------ An embedded and charset-unspecified text was scrubbed... Name: Ejemplo_NIST.R URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20120207/89a678b3/attachment.pl>
Carlos Ortega
2012-Feb-13 10:20 UTC
[R-es] Modelo senoidal de datos temporales de radiación y prueba de Thom
Hola Rubén, Disculpa, no pude ver este tema hasta el fin de semana. Con los datos que has adjuntado he podido reproducir lo que has comentado en tu correo. - Efectivamente obtienes un error con plot.spec porque utiliza las funciones spectrum() y spec.gram() y al ser tu serie univariante por construcción de estas funciones no devuelven ni la frecuencia ni la coherencia. *phase*** *NULL** **for univariate series. For multivariate time series a matrix containing the cross-spectrum phase between different series. **The format is the same as** **coh**.* Lo puedes ver así: dis.spec<-spectrum(D.NIST$Datos,method="ar") dis.spec$phase dic.spec$coh - Por las alternativas que comentas, se me escapa un tanto el camino que quieres explorar. Si lo que quieres es obtener un ajuste de tus datos con funciones trigonométricas, ¿porqué no la ajustas directamente, vaya como una expansión de Fourier con un ajuste nls()?. La opción de FFT o del sistema de ecuaciones no sé si conducen a conseguir un valor de “fase”. Saludos, Carlos Ortega www.qualityexcellence.es El 7 de febrero de 2012 23:56, Rubén Gómez Antolí <lobo@mucharuina.com>escribió:> Hola Carlos: > > Ante todo, gracias por la respuesta y perdón por el retraso en responder, > llevo unos días que no estoy en lo que estoy. :^\ > > El 03/02/12 20:41, Carlos Ortega escribió: > >> Hola Rubén (¿Lobo?), >> > > Cualquiera de las dos, una vez leí que Rubén significa lobo, no se si sera > cierto; si lo es son curiosidades de la vida que te pongan un apodo que > venga a ser el significado de tu nombre. > > > Efectivamente la función demod estaba presente en S-Plus [1], y formaba >> parte del paquete VR (Venables and Ripley) que luego pasó a ser MASS >> (Modern Applied Statistics with S), pero en R esa función ya no se >> incluyó aunque se creó su equivalente "spec" (Spectral Density >> Estimation) aunque ya comentas que no te vale. >> > > No funciona con mis datos ya que estos tienen valores ND, que, en > definitiva, es el problema con el que me enfrento. > > > Entiendo que no te es >> útil porque tu serie es univariada y la función por tanto no devuelve la >> fase. ¿Es así?. >> > > Pues me temo que no he sido capaz de llegar tan lejos, me quedo parado al > intentar obtener un valor para la amplitud. > > Si sustituyo los valores ND por 0, sospecho que esto se encuentra muy > lejos de lo correcto, se puede dibujar la serie, que si es univariada, con > spectrum y obtengo el valor de la frecuencia. > > El siguiente paso es obtener la amplitud y para ello necesitaba esa > gráfica de demodulación compleja (¿es la traducción correcta?) para la > amplitud. > > Cuando me puse a buscar vi que tampoco era capaz de obtener la gráfica de > fase. > > El caso es que estoy siguiendo el ejemplo de NDIST paso a paso y también > me quedo ahí. > > He encontrado algo referente a plot.spec pero me tira un error: > > plot.spec(D.NIST$Datos) > Error: $ operator is invalid for atomic vectors > > (Adjunto datos y guión R por si alguien quiere jugar con eso) > > Por el momento me he estrellado por este camino, tengo un plan B para > crear el modelo, ayer encontré esto: > > http://engrwww.usask.ca/**oldsite/societies/csae/** > protectedpapers/c0628.pdf<http://engrwww.usask.ca/oldsite/societies/csae/protectedpapers/c0628.pdf> > > que utiliza FFT para sacar el modelo senoidal. > > Si tampoco funciona me queda un plan C, Barrera Escoda [0] (pág. 21, 22) > crea un sistema de ecuaciones lineales a partir de la ecuación del modelo > senoidal y, aunque tendré que desempolvar mis apuntes de matemáticas y > echar mano de alguno de los libros que tengo por ahí (¡mi amigo Kreyszig!), > parece factible de realizar. > > > En cuanto al test de Thom, he visto en el paper que referencias que se >> trata de un test de rachas, que tampoco he encontrado en R. Sí que está >> el test de rachas: función runs.test (paquete lawstat). >> > > Le echaré un vistazo, de todas formas la prueba de Thom no parece > demasiado difícil de implementar. > > > Y sí, el "Run sequence Test" es una forma un tanto peculiar de indicar >> el tipo de gráfico que indicas. Que por cierto, he sido incapaz de >> encontrar como tal en el libro de Chambers... >> > > Bueno, menos mal que iba atinado en algo. ^_^ > > > [1]: Todavía se puede encontrar los volúmenes que formaban los manuales >> de usuario de S-Plus. En este segundo se trata el uso de esta función >> (página 281 del pdf): >> http://www.uni-koeln.de/**themen/statistik/software/s/**v70/statman2.pdf<http://www.uni-koeln.de/themen/statistik/software/s/v70/statman2.pdf> >> > > Je, filtros paso-bajos, fases, frecuencias... ¿esto es electrónica o > estadística? Porque me suena mucho a lo primero, y me suena que tengo > muchas cosas que repasar, ¡ay! > > Saludos, >> Carlos Ortega >> www.qualityexcellence.es <http://www.qualityexcellence.**es<http://www.qualityexcellence.es> >> > >> >> >> El 3 de febrero de 2012 00:19, Rubén Gómez Antolí <lobo@mucharuina.com >> <mailto:lobo@mucharuina.com>> escribió: >> >> [...] >> > > 2- Para la realización del modelo senoidal estoy siguiendo los pasos >> que marcan en este texto: >> >> http://www.itl.nist.gov/__**div898/handbook/eda/section4/_** >> _eda4253.htm<http://www.itl.nist.gov/__div898/handbook/eda/section4/__eda4253.htm> >> -- >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es <http://www.qualityexcellence.**es<http://www.qualityexcellence.es> >> > >> > > Un saludo y gracias de nuevo por la ayuda. > > Salud y Revolución. > > Lobo. > > [0] http://zucaina.net/**Publicaciones/barrera-dea.pdf<http://zucaina.net/Publicaciones/barrera-dea.pdf> > > -- > Libertad es poder elegir en cualquier momento. Ahora yo elijo GNU/Linux, > para no atar mis manos con las cadenas del soft propietario. > --------- > Desde El Ejido, en Almería, usuario registrado Linux #294013 > http://www.counter.li.org > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]