Thanks Gàbor, I thought there was some mistake in my logic on how casting works in R and wanted to be sure.
Just a quick question: what's the difference between `[.Date` and `[[.Date`? Is it supposed to be the method for accessing the value right? Thanks again for your help, Cheers, Luca On Thu, Aug 6, 2015 at 10:10 AM, Gábor Csárdi <csardi.ga...@gmail.com> wrote: > Date has a `[.Date` method and also `[[.Date`, but it looks like a for > loop does not consider the class of the object you are iterating over, > so these are ignored and the internal representation is used. > > I think this is a bug, at least in the documentation of ?"for". > > Interestingly, lapply and co. do consider the class: > > invisible(lapply(seq(d1, d2, by = 1), print)) > > works as you would expect. (The invisible() is to suppress printing > the return value.) > > Gabor > > On Thu, Aug 6, 2015 at 3:24 AM, Luca Cerone <luca.cer...@gmail.com> wrote: >> Dear all, >> I am experiencing a weird issue when iterating through dates in R >> (3.1.2 and 3.2.1 on 64bit linux machines) >> >> I am bit surprised about the behaviour of this snippet of code: >> >> d1 <- as.Date('2015-01-01') >> d2 <- as.Date('2015-01-31') >> >> for ( dt in seq(d1,d2, by=1) ) { >> dt <- as.character(dt) >> print(dt) >> } >> >> for ( dt in as.character(seq(d1,d2, by=1)) ) { >> print(dt) >> } >> >> I can't find a good explanation why the first for loop would convert >> to string the numeric interpretation >> of the dates while the second one correctly (at least in my >> intentions) prints the dates as string. >> >> I am sure that it is not a bug in R but I would like to understand why >> I am getting different outputs from the two for loops. >> >> Thanks a lot in advance for your help! >> >> Cheers, >> Luca >> >> ______________________________________________ >> R-devel@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-devel ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel