[R-es] problema con campos que tienen formato fecha

"Marcuzzi, Javier Rubén" javier.ruben.marcuzzi en gmail.com
Mar Ago 26 00:29:37 CEST 2014


Estimada Angela

Yo podría probar su código en linux, pero sin algunos datos de ejemplo o 
alguna escritura de R donde dice el error, es poco lo que podemos hacer.

Por ejemplo $date a mi me supo dar error, no comprendo porque lo trabaja 
de esa forma, no esta mal programar en R pero posiblemente se puede 
realizar de alguna forma más sencilla.

Pero ¿donde le aparecen los errores como para poder duplicarlos y tratar 
de solucionarlos? En todos casos envíe un archivo txt con los primeros 
5  registros.

Javier Marcuzzi

El 25/08/14 a las 19:16, Angela Andrea Camargo Sanabria escibió:
> Hola Javier,
>
> Muchas gracias por responder tan rápido!
>
> Yo trabajo en Mac OS X 10.9.4.
> Versión 0.98.953 de RStudio.
> Versión 3.0.2 (2013-09-25) de R.
>
> ##
> Este es el script que estoy trabajando. Se trata de una rutina para 
> automatizar el cálculo de la duración del evento.
>
> setwd("/Users/angelacamargosanabria/Documents/ANGELITA/1-DOC/1-TESIS/4-PAPERS/1-Mamiferos/DATOS/Bases")
>
> BASE <- read.table("Todos2014.txt", header = TRUE, sep = "\t")
> #attach (BASE)
> dim (BASE)
>
> #library (lubridate)
>
> #convertir a formato de fecha y hora
> BASE <- cbind (BASE, (dmy_hms(paste(BASE$Date,BASE$Time,sep=" "))))
>
> names (BASE)[12]<-"Time2"
>
> #empieza rutina para calcular duración de visitas
> visitas <- data.frame ()
>
> n<-1
> narbol <- 1
>
> while (n <= dim(BASE)[1]) {
>   m = n
>   if (n < dim (BASE)[1]) {
>     while (BASE$Registro[m+1] == "FALSE" & m+1 <= dim(BASE)[1]) {m=m+1}
>     if (m+1 == dim (BASE)[1] & BASE$Registro[m+1]== "FALSE") {m+1}}
>   if (m == n) { (visitas[narbol,1]<-0) }
>   else
> {visitas[narbol,1]<-(BASE$Time2[m]-BASE$Time2[n])}
>   visitas[narbol,2]<-BASE$SpeciesID[n]
>   visitas[narbol,3]<-BASE$StationID[n]
>   visitas[narbol,4]<-BASE$Time2[n]
>   visitas[narbol,5]<-BASE$Time2[m]
>   narbol <- narbol + 1
>   n = m+1
> }
>
> colnames (visitas) <- c("Duracion", "Mammal", "Arbol", "FechaI", "FechaF")
>
> ---
> Gracias!
>
> ----
> *Angela Andrea Camargo Sanabria*
> Estudiante Doctorado en Ciencias Biológicas
> Laboratorio de Ecología de poblaciones y comunidades tropicales
> Centro de Investigaciones en Ecosistemas (CIEco)
> UNAM, campus Morelia
> Antigua Carretera a Pátzcuaro # 8701
> Col. Ex-Hacienda de San José de la Huerta, CP 58190
> Morelia, Michoacán, México
> Tel.: 443-3222706 ext. 42511
> e-mail: aacamargo en cieco.unam.mx <mailto:aacamargo en cieco.unam.mx>
> skype: angela.camargo26
>
>
>
> 2014-08-25 17:01 GMT-05:00 "Marcuzzi, Javier Rubén" 
> <javier.ruben.marcuzzi en gmail.com 
> <mailto:javier.ruben.marcuzzi en gmail.com>>:
>
>     Estimada Angela Andrea Camargo
>
>     Las fechas con R dan trabajo, sería bueno que envíes un código R
>     escrito
>     como ejemplo junto a las especificaciónes de su sistema operativo y
>     versión de R (porque me paso tener problemas con las fechas y
>     diferencias entre ambientes de trabajo).
>
>     Javier Marcuzzi
>
>     El 25/08/2014 06:46 p.m., Angela Andrea Camargo Sanabria escribió:
>     > Hola a todos,
>     >
>     > Tengo la siguiente inquietud, espero me puedan ayudar.
>     >
>     > Tengo una base de datos de la que estoy haciendo varios
>     c?lculos. Uno de
>     > ellos es la diferencia entre tiempos para conocer la duraci?n de
>     un evento.
>     > Aqu? us? el paquete lubridate para tener fecha y hora en el formato
>     > adecuado. Cuando hago el calculo obtengo algo como esto:
>     >
>     >> (BASE$Time2[518]-BASE$Time2[516])
>     > Time difference of 1.966667 mins
>     >
>     > lo cual est? bien. El problema es que quiero guardarlo en un
>     data frame.
>     > Pero cuando lo guardo se me pierden las unidades y el formato de
>     fecha.
>     >
>     > BASEFINAL
>     >          V1                       V2  V3         V4
>     >    V5
>     > 88  1.966667           Eira barbara Posa1 1403765571 1403765689
>     >
>     > V1 guarda el resultado de la resta, pero en unos casos son
>     segundos y en
>     > otros minutos, c?mo lo puedo saber?
>     > Igual me pasa con las columnas V4 y V5 que son la fecha/hora de
>     inicio y de
>     > finalizaci?n del respectivo evento. Pero creo que esto ?ltimo lo
>     puedo
>     > arreglar si aplico de vuelta la funci?n as.POSIXct(BASEFINAL[,5],
>     > origin="1970-01-01").
>     >
>     > No s? si sea algo tan tonto como que no pueda usar un data frame
>     para
>     > guardar mi base final. Agradezco su ayuda!!!
>     >
>     > Saludos,
>     >
>     >
>     > ----
>     > *Angela Andrea Camargo Sanabria*
>     > Estudiante Doctorado en Ciencias Biol?gicas
>     > Laboratorio de Ecolog?a de poblaciones y comunidades tropicales
>     > Centro de Investigaciones en Ecosistemas (CIEco)
>     > UNAM, campus Morelia
>     > Antigua Carretera a P?tzcuaro # 8701
>     > Col. Ex-Hacienda de San Jos? de la Huerta, CP 58190
>     > Morelia, Michoac?n, M?xico
>     > Tel.: 443-3222706 ext. 42511 <tel:443-3222706%20ext.%2042511>
>     > e-mail: aacamargo en cieco.unam.mx <mailto:aacamargo en cieco.unam.mx>
>     > skype: angela.camargo26
>     >
>     >       [[alternative HTML version deleted]]
>     >
>     >
>     >
>     > _______________________________________________
>     > R-help-es mailing list
>     > R-help-es en r-project.org <mailto:R-help-es en r-project.org>
>     > https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>
>             [[alternative HTML version deleted]]
>
>
>     _______________________________________________
>     R-help-es mailing list
>     R-help-es en r-project.org <mailto:R-help-es en r-project.org>
>     https://stat.ethz.ch/mailman/listinfo/r-help-es
>
>


	[[alternative HTML version deleted]]



Más información sobre la lista de distribución R-help-es