Dear Jim, Thank you for coming my assist me. I have tried all you suggested but the same result keep coming. I tried, for example: dta <- read.table("Ohr1may98", col.names = c("year", "month", "day", "hour", "counts"))
dta$year <- with( dta, ifelse(year < 50, year + 2000, year + 1900)) dta$date<-strptime(paste(dta$year,dta$month,dta$day,dta$hour), "%Y %m %d %H") a = dta$date and obtained: > a [1] "1998-01-05 14:00:00 GMT" "1998-01-05 15:00:00 GMT" [3] "1998-01-05 16:00:00 GMT" "1998-01-05 17:00:00 GMT" [5] "1998-01-05 18:00:00 GMT" "1998-01-05 19:00:00 GMT" [7] "1998-01-05 20:00:00 GMT" "1998-01-05 21:00:00 GMT" [9] "1998-01-05 22:00:00 GMT" "1998-01-05 23:00:00 GMT" [11] "1998-01-06 00:00:00 GMT" "1998-01-06 01:00:00 GMT" [13] "1998-01-06 02:00:00 GMT" "1998-01-06 03:00:00 GMT" [15] "1998-01-06 04:00:00 GMT" "1998-01-06 05:00:00 GMT" [17] "1998-01-06 06:00:00 GMT" Instead of getting AEST as in your own result, mine remains GMT. I think the problem is coming from my system or location, I am not sure. Please have a look again and advise further. Thank you. On Wed, Jan 8, 2020 at 11:05 AM Jim Lemon <drjimle...@gmail.com> wrote: > > Hi again, > Small typo, should be > > dta$date<-strptime(paste(dta$year,dta$month,dta$day,dta$hour), > "%Y %m %d %H" > > as I tried it both with and without the century just to check and > copied the wrong line. > > On Wed, Jan 8, 2020 at 9:03 PM Jim Lemon <drjimle...@gmail.com> wrote: > > > > Hi Ogbos, > > I get the correct result using strptime: > > > > dta$date<-strptime(paste(dta$year,dta$month,dta$day,dta$hour), > > "%y %m %d %H" > > ) > > > dta$date > > [1] "1998-05-01 02:00:00 AEST" "1998-05-01 03:00:00 AEST" > > [3] "1998-05-01 04:00:00 AEST" "1998-05-01 05:00:00 AEST" > > [5] "1998-05-01 06:00:00 AEST" "1998-05-01 07:00:00 AEST" > > [7] "1998-05-01 08:00:00 AEST" "1998-05-01 09:00:00 AEST" > > [9] "1998-05-01 10:00:00 AEST" "1998-05-01 11:00:00 AEST" > > [11] "1998-05-01 12:00:00 AEST" "1998-05-01 13:00:00 AEST" > > [13] "1998-05-01 14:00:00 AEST" "1998-05-01 15:00:00 AEST" > > [15] "1998-05-01 16:00:00 AEST" "1998-05-01 17:00:00 AEST" > > [17] "1998-05-01 18:00:00 AEST" "1998-05-01 19:00:00 AEST" > > [19] "1998-05-01 20:00:00 AEST" "1998-05-01 21:00:00 AEST" > > [21] "1998-05-01 22:00:00 AEST" "1998-05-01 23:00:00 AEST" > > [23] "1998-05-02 00:00:00 AEST" "1998-05-02 01:00:00 AEST" > > [25] "1998-05-02 02:00:00 AEST" "1998-05-02 03:00:00 AEST" > > [27] "1998-05-02 04:00:00 AEST" "1998-05-02 05:00:00 AEST" > > [29] "1998-05-02 06:00:00 AEST" > > > > Same result with > > > > ISOdatetime(dta$year,dta$month,dta$day,dta$hour,0,0,tz="GMT") > > as.POSIXct(ISOdatetime(dta$year,dta$month,dta$day,dta$hour,0,0,tz="GMT")) > > > > As it should be as the lower two call strptime. I can't see from your > > code why the month and day are transcribed. > > > > Jim ______________________________________________ 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.