Eduardo, Me parece que el problema es el locale para TIME y la interpretación de %p, para no tener ese problema lo que tengo que hacer en mi caso es cambiar LC_TIME:> Sys.getlocale()[1] "LC_COLLATE=Spanish_Argentina.1252;LC_CTYPE=Spanish_Argentina.1252;LC_MONETARY=Spanish_Argentina.1252;LC_NUMERIC=C;LC_TIME=Spanish_Argentina.1252"> Sys.setlocale("LC_TIME", "C")[1] "C"> strptime("19/02/2014 12:42 pm", format = "%d/%m/%Y %I:%M %p", tz="")[1] "2014-02-19 12:42:00 ART"> Sys.setlocale("LC_TIME", "C")[1] "C">Ten en cuenta que como dice el help de strptime que la clave %p se tiene que usar con %I y no con %H. Espero te sirva. Daniel Merino El 25 de septiembre de 2014, 11:18, Carlos Ortega <cof en qualityexcellence.es> escribió:> Hola Eduardo, > > He trabajado con el paquete Openair y para las fechas lo que hice fue > convertirlas con la función "ymd_hms()" del paquete "lubridate". > > La clase resultante debiera ser la misma que consigues con as.Date() y con > strptime(), lo miraré, pero en el mientras tanto prueba esta alternativa y > nos comentas si el problema desaparece. > > Saludos, > Carlos Ortega > www.qualityexcellence.es > > El 25 de septiembre de 2014, 16:08, Eduardo Bieñkowski <edukoski en gmail.com > > > escribió: > > > Estoy trabajando con el paquete openair y leyendo los datos desde un CSV. > > Entre los campos que estoy levantando existe uno con el formato > dd/mm/YYYY > > hh:mm por ejemplo: > > > > 19/02/2014 12:42 pm > > > > Cuando quiero consultar por fechas con las funciones del paquete openair > > datoscont10<-selectByDate(dato$actualizado, start="01/03/2014", > > end="09/09/2014") > > > > me lista el siguiente mensaje: > > Error en as.Date.default(date) : do not know how to convert 'date' to > > class ?Date? > > > > Si trato de transformar a fecha el campo levantado con cualquiera de las > > siguientes sentencias eme sigue dando el mismo error a pesar que el > objeto > > date paso a ser en el caso 1 de clase DATE y en el caso 2 de clase > POSIXit > > > > #opcion 1 > > date <- as.Date(dato$actualizado, "%d/%m/%Y %H:%M") > > class(date) > > [1] "Date" > > > > #opcion 2 > > date <- strptime(dato$actualizado,format="%d/%m/%Y") > > class(date) > > [1] "POSIXlt" "POSIXt" > > > > Alquien se ha topado con este error, he buscado en varios sitios y no le > he > > podido solucionar. > > > > Saludos > > > > -- > > Eduardo > > > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > R-help-es mailing list > > R-help-es en r-project.org > > https://stat.ethz.ch/mailman/listinfo/r-help-es > > > > > > -- > Saludos, > Carlos Ortega > www.qualityexcellence.es > > [[alternative HTML version deleted]] > > _______________________________________________ > R-help-es mailing list > R-help-es en r-project.org > https://stat.ethz.ch/mailman/listinfo/r-help-es >-- Daniel [[alternative HTML version deleted]]
Si lo proceso con date<-ymd_hms(dato$actualizado) no me da error pero la transformación no es la correcta> head(dato$actualizado)[1] 22/09/2014 09:41 am 22/09/2014 09:34 am 22/09/2014 09:43 am 19/09/2014 01:31 pm 19/09/2014 12:38 pm 23/09/2014 08:53 am 492 Levels: 01/03/2014 07:49 pm 01/04/2014 01:49 pm 01/07/2014 01:49 pm 01/07/2014 02:06 pm 01/07/2014 02:27 pm ... 31/03/2014 06:28 pm> head(date)[1] "2022-09-20 14:09:41 UTC" "2022-09-20 14:09:34 UTC" "2022-09-20 14:09:43 UTC" "2019-09-20 14:01:31 UTC" "2019-09-20 14:12:38 UTC" [6] "2023-09-20 14:08:53 UTC" El 25 de septiembre de 2014, 12:00, daniel <daniel319 en gmail.com> escribió:> Eduardo, > > Me parece que el problema es el locale para TIME y la interpretación de > %p, para no tener ese problema lo que tengo que hacer en mi caso es cambiar > LC_TIME: > > > Sys.getlocale() > [1] > "LC_COLLATE=Spanish_Argentina.1252;LC_CTYPE=Spanish_Argentina.1252;LC_MONETARY=Spanish_Argentina.1252;LC_NUMERIC=C;LC_TIME=Spanish_Argentina.1252" > > Sys.setlocale("LC_TIME", "C") > [1] "C" > > strptime("19/02/2014 12:42 pm", format = "%d/%m/%Y %I:%M %p", tz="") > [1] "2014-02-19 12:42:00 ART" > > Sys.setlocale("LC_TIME", "C") > [1] "C" > > > > Ten en cuenta que como dice el help de strptime que la clave %p se tiene > que usar con %I y no con %H. > > Espero te sirva. > > Daniel Merino > > El 25 de septiembre de 2014, 11:18, Carlos Ortega < > cof en qualityexcellence.es> escribió: > > Hola Eduardo, >> >> He trabajado con el paquete Openair y para las fechas lo que hice fue >> convertirlas con la función "ymd_hms()" del paquete "lubridate". >> >> La clase resultante debiera ser la misma que consigues con as.Date() y con >> strptime(), lo miraré, pero en el mientras tanto prueba esta alternativa y >> nos comentas si el problema desaparece. >> >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> El 25 de septiembre de 2014, 16:08, Eduardo Bieñkowski < >> edukoski en gmail.com> >> escribió: >> >> > Estoy trabajando con el paquete openair y leyendo los datos desde un >> CSV. >> > Entre los campos que estoy levantando existe uno con el formato >> dd/mm/YYYY >> > hh:mm por ejemplo: >> > >> > 19/02/2014 12:42 pm >> > >> > Cuando quiero consultar por fechas con las funciones del paquete openair >> > datoscont10<-selectByDate(dato$actualizado, start="01/03/2014", >> > end="09/09/2014") >> > >> > me lista el siguiente mensaje: >> > Error en as.Date.default(date) : do not know how to convert 'date' to >> > class ?Date? >> > >> > Si trato de transformar a fecha el campo levantado con cualquiera de las >> > siguientes sentencias eme sigue dando el mismo error a pesar que el >> objeto >> > date paso a ser en el caso 1 de clase DATE y en el caso 2 de clase >> POSIXit >> > >> > #opcion 1 >> > date <- as.Date(dato$actualizado, "%d/%m/%Y %H:%M") >> > class(date) >> > [1] "Date" >> > >> > #opcion 2 >> > date <- strptime(dato$actualizado,format="%d/%m/%Y") >> > class(date) >> > [1] "POSIXlt" "POSIXt" >> > >> > Alquien se ha topado con este error, he buscado en varios sitios y no >> le he >> > podido solucionar. >> > >> > Saludos >> > >> > -- >> > Eduardo >> > >> > [[alternative HTML version deleted]] >> > >> > _______________________________________________ >> > R-help-es mailing list >> > R-help-es en r-project.org >> > https://stat.ethz.ch/mailman/listinfo/r-help-es >> > >> >> >> >> -- >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > > > > -- > Daniel >-- Eduardo [[alternative HTML version deleted]]
Estimados No use openair, pero utilizando distintas opciónes para el trabajo con fechas, donde algunas andaban y no andaban, es decir, eran tan inestables que en dos corridas los resultados eran distintos, termine utilizando la forma de strptime, recuerdo que en un trabajo para una consultora/estudio me llevo un mes entero poder solucionar mi problema con las fechas. Voto por : date <- strptime(dato$actualizado,format="%d/%m/%Y") Javier Rubén Marcuzzi El 25/09/2014 01:14 p.m., Eduardo Bieñkowski escribió:> date <- strptime(dato$actualizado,format="%d/%m/%Y")
Si proceso de la siguiente manera> datoscont<-as.Date(dato$actualiza, format= "%d/%m/%Y") > head(datoscont)[1] "2014-09-22" "2014-09-22" "2014-09-22" "2014-09-19" "2014-09-19" "2014-09-23"> class(datoscont)[1] "Date" Se supone que tengo un objeto datoscont de clase Date, aun asi cuando lo quiero procesar> datoscont10<-selectByDate(datoscont, start="2014-03-20", end="2014-06-17")Error en as.Date.default(date) : do not know how to convert 'date' to class ?Date? El 25 de septiembre de 2014, 12:00, daniel <daniel319 en gmail.com> escribió:> Eduardo, > > Me parece que el problema es el locale para TIME y la interpretación de > %p, para no tener ese problema lo que tengo que hacer en mi caso es cambiar > LC_TIME: > > > Sys.getlocale() > [1] > "LC_COLLATE=Spanish_Argentina.1252;LC_CTYPE=Spanish_Argentina.1252;LC_MONETARY=Spanish_Argentina.1252;LC_NUMERIC=C;LC_TIME=Spanish_Argentina.1252" > > Sys.setlocale("LC_TIME", "C") > [1] "C" > > strptime("19/02/2014 12:42 pm", format = "%d/%m/%Y %I:%M %p", tz="") > [1] "2014-02-19 12:42:00 ART" > > Sys.setlocale("LC_TIME", "C") > [1] "C" > > > > Ten en cuenta que como dice el help de strptime que la clave %p se tiene > que usar con %I y no con %H. > > Espero te sirva. > > Daniel Merino > > El 25 de septiembre de 2014, 11:18, Carlos Ortega < > cof en qualityexcellence.es> escribió: > > Hola Eduardo, >> >> He trabajado con el paquete Openair y para las fechas lo que hice fue >> convertirlas con la función "ymd_hms()" del paquete "lubridate". >> >> La clase resultante debiera ser la misma que consigues con as.Date() y con >> strptime(), lo miraré, pero en el mientras tanto prueba esta alternativa y >> nos comentas si el problema desaparece. >> >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> El 25 de septiembre de 2014, 16:08, Eduardo Bieñkowski < >> edukoski en gmail.com> >> escribió: >> >> > Estoy trabajando con el paquete openair y leyendo los datos desde un >> CSV. >> > Entre los campos que estoy levantando existe uno con el formato >> dd/mm/YYYY >> > hh:mm por ejemplo: >> > >> > 19/02/2014 12:42 pm >> > >> > Cuando quiero consultar por fechas con las funciones del paquete openair >> > datoscont10<-selectByDate(dato$actualizado, start="01/03/2014", >> > end="09/09/2014") >> > >> > me lista el siguiente mensaje: >> > Error en as.Date.default(date) : do not know how to convert 'date' to >> > class ?Date? >> > >> > Si trato de transformar a fecha el campo levantado con cualquiera de las >> > siguientes sentencias eme sigue dando el mismo error a pesar que el >> objeto >> > date paso a ser en el caso 1 de clase DATE y en el caso 2 de clase >> POSIXit >> > >> > #opcion 1 >> > date <- as.Date(dato$actualizado, "%d/%m/%Y %H:%M") >> > class(date) >> > [1] "Date" >> > >> > #opcion 2 >> > date <- strptime(dato$actualizado,format="%d/%m/%Y") >> > class(date) >> > [1] "POSIXlt" "POSIXt" >> > >> > Alquien se ha topado con este error, he buscado en varios sitios y no >> le he >> > podido solucionar. >> > >> > Saludos >> > >> > -- >> > Eduardo >> > >> > [[alternative HTML version deleted]] >> > >> > _______________________________________________ >> > R-help-es mailing list >> > R-help-es en r-project.org >> > https://stat.ethz.ch/mailman/listinfo/r-help-es >> > >> >> >> >> -- >> Saludos, >> Carlos Ortega >> www.qualityexcellence.es >> >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> R-help-es mailing list >> R-help-es en r-project.org >> https://stat.ethz.ch/mailman/listinfo/r-help-es >> > > > > -- > Daniel >-- Eduardo [[alternative HTML version deleted]]
Sorry, la función por el formato que tienen tus fechas debe de ser "dmy_hms()"... Saludos, Carlos Ortega www.qualityexcellence.es El 25 de septiembre de 2014, 18:14, Eduardo Bieñkowski <edukoski en gmail.com> escribió:> Si lo proceso con date<-ymd_hms(dato$actualizado) no me da error pero la > transformación no es la correcta > > > head(dato$actualizado) > [1] 22/09/2014 09:41 am 22/09/2014 09:34 am 22/09/2014 09:43 am 19/09/2014 > 01:31 pm 19/09/2014 12:38 pm 23/09/2014 08:53 am > 492 Levels: 01/03/2014 07:49 pm 01/04/2014 01:49 pm 01/07/2014 01:49 pm > 01/07/2014 02:06 pm 01/07/2014 02:27 pm ... 31/03/2014 06:28 pm > > > head(date) > [1] "2022-09-20 14:09:41 UTC" "2022-09-20 14:09:34 UTC" "2022-09-20 > 14:09:43 UTC" "2019-09-20 14:01:31 UTC" "2019-09-20 14:12:38 UTC" > [6] "2023-09-20 14:08:53 UTC" > > > El 25 de septiembre de 2014, 12:00, daniel <daniel319 en gmail.com> escribió: > > Eduardo, >> >> Me parece que el problema es el locale para TIME y la interpretación de >> %p, para no tener ese problema lo que tengo que hacer en mi caso es cambiar >> LC_TIME: >> >> > Sys.getlocale() >> [1] >> "LC_COLLATE=Spanish_Argentina.1252;LC_CTYPE=Spanish_Argentina.1252;LC_MONETARY=Spanish_Argentina.1252;LC_NUMERIC=C;LC_TIME=Spanish_Argentina.1252" >> > Sys.setlocale("LC_TIME", "C") >> [1] "C" >> > strptime("19/02/2014 12:42 pm", format = "%d/%m/%Y %I:%M %p", tz="") >> [1] "2014-02-19 12:42:00 ART" >> > Sys.setlocale("LC_TIME", "C") >> [1] "C" >> > >> >> Ten en cuenta que como dice el help de strptime que la clave %p se tiene >> que usar con %I y no con %H. >> >> Espero te sirva. >> >> Daniel Merino >> >> El 25 de septiembre de 2014, 11:18, Carlos Ortega < >> cof en qualityexcellence.es> escribió: >> >> Hola Eduardo, >>> >>> He trabajado con el paquete Openair y para las fechas lo que hice fue >>> convertirlas con la función "ymd_hms()" del paquete "lubridate". >>> >>> La clase resultante debiera ser la misma que consigues con as.Date() y >>> con >>> strptime(), lo miraré, pero en el mientras tanto prueba esta alternativa >>> y >>> nos comentas si el problema desaparece. >>> >>> Saludos, >>> Carlos Ortega >>> www.qualityexcellence.es >>> >>> El 25 de septiembre de 2014, 16:08, Eduardo Bieñkowski < >>> edukoski en gmail.com> >>> escribió: >>> >>> > Estoy trabajando con el paquete openair y leyendo los datos desde un >>> CSV. >>> > Entre los campos que estoy levantando existe uno con el formato >>> dd/mm/YYYY >>> > hh:mm por ejemplo: >>> > >>> > 19/02/2014 12:42 pm >>> > >>> > Cuando quiero consultar por fechas con las funciones del paquete >>> openair >>> > datoscont10<-selectByDate(dato$actualizado, start="01/03/2014", >>> > end="09/09/2014") >>> > >>> > me lista el siguiente mensaje: >>> > Error en as.Date.default(date) : do not know how to convert 'date' to >>> > class ?Date? >>> > >>> > Si trato de transformar a fecha el campo levantado con cualquiera de >>> las >>> > siguientes sentencias eme sigue dando el mismo error a pesar que el >>> objeto >>> > date paso a ser en el caso 1 de clase DATE y en el caso 2 de clase >>> POSIXit >>> > >>> > #opcion 1 >>> > date <- as.Date(dato$actualizado, "%d/%m/%Y %H:%M") >>> > class(date) >>> > [1] "Date" >>> > >>> > #opcion 2 >>> > date <- strptime(dato$actualizado,format="%d/%m/%Y") >>> > class(date) >>> > [1] "POSIXlt" "POSIXt" >>> > >>> > Alquien se ha topado con este error, he buscado en varios sitios y no >>> le he >>> > podido solucionar. >>> > >>> > Saludos >>> > >>> > -- >>> > Eduardo >>> > >>> > [[alternative HTML version deleted]] >>> > >>> > _______________________________________________ >>> > R-help-es mailing list >>> > R-help-es en r-project.org >>> > https://stat.ethz.ch/mailman/listinfo/r-help-es >>> > >>> >>> >>> >>> -- >>> Saludos, >>> Carlos Ortega >>> www.qualityexcellence.es >>> >>> [[alternative HTML version deleted]] >>> >>> _______________________________________________ >>> R-help-es mailing list >>> R-help-es en r-project.org >>> https://stat.ethz.ch/mailman/listinfo/r-help-es >>> >> >> >> >> -- >> Daniel >> > > > > -- > Eduardo >-- Saludos, Carlos Ortega www.qualityexcellence.es [[alternative HTML version deleted]]