Buenos dias, Tengo la siguiente duda. Desde una hoja de calculo .xls me descargo un fichero en r as.matrix. Time VAR_2 VAR_3 VAR_4........ VAR_N Fechas(n) Precios Precios Precios Precios Fechas (n-1) ¿como puedo hacer para graficar de forma ordenada (fechas) cada uno del vector columnas (son precios de activos)? [[alternative HTML version deleted]]
miguel.angel.rodriguez.muinos en sergas.es
2013-May-15 10:00 UTC
[R-es] series financieras
Hola "towanda.sagitario". La verdad es que tu pregunta es demasiado genérica... Supongamos que tienes el fichero Excel cargado en R con el nombre "Prueba" La respuesta a tu pregunta se puede resolver diciéndote que "plot(Prueba)" es la solución. Como supongo que lo quieres en gráficos independientes.... plot(Prueba$Time,Prueba$VAR_2) plot(Prueba$Time,Prueba$VAR_3) ... ... Si, además, quieres que salgan ordenados por fecha.... plot(sort(Prueba$Time),Prueba$VAR_2) Si en vez de puntos, quieres líneas que unan los valores.... plot(sort(Prueba$Time),Prueba$VAR_2,step="s") Como tienes un objeto as.matrix también te sirve un.. barplot(Prueba$VAR_2) En caso de que quieras representar los gráficos de otra manera (tipos de gráficos distintos, manejar opciones más avanzadas, ...) tendrías que utilizar algun paquete tipo ggplot2 (o intentarlo desde alguno de los GUI para R que manejan opciones de gráficos como RCommander, Deducer, Red-R, ...) En caso de que necesites algo más concreto debieras especificar más tu pregunta. Un Saludo, _____________________________ Miguel Ángel Rodríguez Muíños Dirección Xeral de Innovación e Xestión da Saúde Pública Consellería de Sanidade Xunta de Galicia http://dxsp.sergas.es -----Mensaje original----- De: r-help-es-bounces en r-project.org [mailto:r-help-es-bounces en r-project.org] En nombre de towanda.sagitario en gmail.com Enviado el: miércoles, 15 de mayo de 2013 8:36 Para: R-help-es en r-project.org Asunto: [R-es] series financieras Buenos dias, Tengo la siguiente duda. Desde una hoja de calculo .xls me descargo un fichero en r as.matrix. Time VAR_2 VAR_3 VAR_4........ VAR_N Fechas(n) Precios Precios Precios Precios Fechas (n-1) ¿como puedo hacer para graficar de forma ordenada (fechas) cada uno del vector columnas (son precios de activos)? [[alternative HTML version deleted]] Nota: A información contida nesta mensaxe e os seus posibles documentos adxuntos é privada e confidencial e está dirixida únicamente ó seu destinatario/a. Se vostede non é o/a destinatario/a orixinal desta mensaxe, por favor elimínea. A distribución ou copia desta mensaxe non está autorizada. Nota: La información contenida en este mensaje y sus posibles documentos adjuntos es privada y confidencial y está dirigida únicamente a su destinatario/a. Si usted no es el/la destinatario/a original de este mensaje, por favor elimínelo. La distribución o copia de este mensaje no está autorizada. See more languages: http://www.sergas.es/aviso_confidencialidad.htm
towanda.sagitario siempre resulta amable firmar los mensajes con un nombre real. Respecto de tu pregunta ya que supongo estas empezando a usar series financieras te recomiendo los paquetes quantmod (requiere zoo, xts, TTR) y PerformanceAnalytics, ambos se pueden descargar desde CRAN y tienen manuales bastante razonables. La pregunta central que haces me parece es como trabajar con fechas, yo uso y recomiendo el paquete xts. Si esos paquetes no te permiten hacer lo que buscas ayudaría que fueras más precisa sobre el objetivo final de lo que quieres hacer. Daniel Merino El 15 de mayo de 2013 07:00, <miguel.angel.rodriguez.muinos@sergas.es>escribió:> Hola "towanda.sagitario". > > La verdad es que tu pregunta es demasiado genérica... > > Supongamos que tienes el fichero Excel cargado en R con el nombre "Prueba" > > La respuesta a tu pregunta se puede resolver diciéndote que "plot(Prueba)" > es la solución. > > Como supongo que lo quieres en gráficos independientes.... > plot(Prueba$Time,Prueba$VAR_2) > plot(Prueba$Time,Prueba$VAR_3) > ... ... > > Si, además, quieres que salgan ordenados por fecha.... > plot(sort(Prueba$Time),Prueba$VAR_2) > > Si en vez de puntos, quieres líneas que unan los valores.... > plot(sort(Prueba$Time),Prueba$VAR_2,step="s") > > Como tienes un objeto as.matrix también te sirve un.. > barplot(Prueba$VAR_2) > > En caso de que quieras representar los gráficos de otra manera (tipos de > gráficos distintos, manejar opciones más avanzadas, ...) tendrías que > utilizar algun paquete tipo ggplot2 (o intentarlo desde alguno de los GUI > para R que manejan opciones de gráficos como RCommander, Deducer, Red-R, > ...) > > En caso de que necesites algo más concreto debieras especificar más tu > pregunta. > > > Un Saludo, > _____________________________ > Miguel Ángel Rodríguez Muíños > Dirección Xeral de Innovación e Xestión da Saúde Pública > Consellería de Sanidade > Xunta de Galicia > http://dxsp.sergas.es > > > > > > -----Mensaje original----- > De: r-help-es-bounces@r-project.org [mailto: > r-help-es-bounces@r-project.org] En nombre de towanda.sagitario@gmail.com > Enviado el: miércoles, 15 de mayo de 2013 8:36 > Para: R-help-es@r-project.org > Asunto: [R-es] series financieras > > Buenos dias, > > Tengo la siguiente duda. > > Desde una hoja de calculo .xls me descargo un fichero en r as.matrix. > Time VAR_2 VAR_3 VAR_4........ VAR_N > Fechas(n) Precios Precios Precios Precios > Fechas (n-1) > > > ¿como puedo hacer para graficar de forma ordenada (fechas) cada uno del > vector columnas (son precios de activos)? > > [[alternative HTML version deleted]] > > > Nota: A información contida nesta mensaxe e os seus posibles documentos > adxuntos é privada e confidencial e está dirixida únicamente ó seu > destinatario/a. Se vostede non é o/a destinatario/a orixinal desta mensaxe, > por favor elimínea. A distribución ou copia desta mensaxe non está > autorizada. > > Nota: La información contenida en este mensaje y sus posibles documentos > adjuntos es privada y confidencial y está dirigida únicamente a su > destinatario/a. Si usted no es el/la destinatario/a original de este > mensaje, por favor elimínelo. La distribución o copia de este mensaje no > está autorizada. > > See more languages: http://www.sergas.es/aviso_confidencialidad.htm > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Daniel [[alternative HTML version deleted]]
Los datos adjuntos proceden de una hoja de calculo .xls. y, mediante el siguiente procedimiento los leo library(RODBC) canalexcel_01<-odbcConnectExcel(file.choose()) sqlTables(canalexcel_01) sqlFetch(canalexcel_01,"Datos_DDE_1150") Hoja1_01<-sqlFetch(canalexcel_01,"Datos_DDE_1150") Matriz_01<-as.matrix(Hoja1_01)###en forma de matriz Cuestiones: 1. Graficar con el orden de fechas en par() desde el activo_01 al activo_05 2. mediante la siguiente instrucción hago el cociente Cociente_01<-as.matrix(Hoja1_01[,2]/Hoja1_01[3:6]) del activo_01/activo02....activo_05 ¿hay alguna forma de que me haga el cociente del activo_02/activo_03...activo_05 y así con el resto. luego hago summary(Cociente_01) y me dá las medidas activo_01 activo_02 activo_03 Min. :0.7121 Min. :1.135 Min. :0.9029 1st Qu.:0.8037 1st Qu.:1.380 1st Qu.:1.0295 Median :0.8691 Median :1.680 Median :1.1209 Mean :0.9360 Mean :1.806 Mean :1.1823 3rd Qu.:1.0703 3rd Qu.:2.254 3rd Qu.:1.3297 Max. :1.2858 Max. :2.972 Max. :1.7281 como podría graficar un boxplox() de todos juntos y ver el posicionamiento que tiene el ultimo de los valores? Gracias Francisco Javier Lopez [[alternative HTML version deleted]]
Francisco. A falta de un mejor ejemplo reproducible ajustado a la forma de tus datos te mando uno para ver si eso es lo que quieres: df <- data.frame( variacion_precio= rnorm(50), fecha = c( rep(''2013-05-10'', 10), rep(''2013-05-13'', 10), rep(''2013-05-14'', 10), rep(''2013-05-15'', 10), rep(''2013-05-16'', 10))) boxplot(variacion_precio ~ fecha, data = df, col = "lightblue") Como verás las fechas no son tales sino caracteres. Suerte, Daniel Merino El 16 de mayo de 2013 10:55, towanda.sagitario <towanda.sagitario@gmail.com>escribió:> Los datos adjuntos proceden de una hoja de calculo .xls. y, mediante el > siguiente procedimiento los leo > library(RODBC) > canalexcel_01<-odbcConnectExcel(file.choose()) > sqlTables(canalexcel_01) > sqlFetch(canalexcel_01,"Datos_DDE_1150") > Hoja1_01<-sqlFetch(canalexcel_01,"Datos_DDE_1150") > Matriz_01<-as.matrix(Hoja1_01)###en forma de matriz > > Cuestiones: > 1. Graficar con el orden de fechas en par() desde el activo_01 al activo_05 > 2. mediante la siguiente instrucción hago el cociente > Cociente_01<-as.matrix(Hoja1_01[,2]/Hoja1_01[3:6]) del > activo_01/activo02....activo_05 ¿hay alguna forma de que me haga el > cociente del activo_02/activo_03...activo_05 y así con el resto. > luego hago summary(Cociente_01) y me dá las medidas > activo_01 activo_02 activo_03 > Min. :0.7121 Min. :1.135 Min. :0.9029 > 1st Qu.:0.8037 1st Qu.:1.380 1st Qu.:1.0295 > Median :0.8691 Median :1.680 Median :1.1209 > Mean :0.9360 Mean :1.806 Mean :1.1823 > 3rd Qu.:1.0703 3rd Qu.:2.254 3rd Qu.:1.3297 > Max. :1.2858 Max. :2.972 Max. :1.7281 > > como podría graficar un boxplox() de todos juntos y ver el posicionamiento > que tiene el ultimo de los valores? > > Gracias > Francisco Javier Lopez > > [[alternative HTML version deleted]] > > > _______________________________________________ > R-help-es mailing list > R-help-es@r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es > >-- Daniel [[alternative HTML version deleted]]