Hello all: I wrote a function:
my.bastimeToSynoptic <- function(x) { f<-unlist(strsplit(as.character(x), " ")) hr<-unlist(strsplit(f[2], ":")) if(as.numeric(hr[1])<6) { synoptic<-"00" } else { synoptic<-as.integer(as.numeric(hr[1])/6)*6 } tdate<-paste(c(f[1]," ",as.character(synoptic),":00:00"),collapse="") d<-as.POSIXct(tdate, tz="EST") return(d) } This works as expected: > my.bastimeToSynoptic("2010-12-01 14:05:00") [1] "2010-12-01 12:00:00 EST" This does not: > my.bastimeToSynoptic("2010-12-01 05:05:00") [1] "2010-12-01 EST" I expect to get: "2010-12-01 00:00:00 EST" I've tried explicitly forcing the format with d<-as.POSIXct(tdate, tz="EST", format = "%Y-%m-%d %H:%M:%S") and I have checked online, finding examples showing what I'm doing with as.POSIXct should work. I'm at an impasse. I'm running R version 3.4.0 (2017-04-21) on Ubuntu 16.04 LTS Thank you, Tom -- [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.