laurent
2009-Aug-09 14:20 UTC
[Rd] Why is strptime always returning a vector of length 9 ?
Dear List, I am having an issue with strptime (see below). I can reproduce it on R-2.8, R-2.9, and R-2.10-dev, I tempted to see either a bug or my misunderstanding (and then I just don't currently see where). # setup: x <- c("March 09, 2007", "May 31, 2007", "November 12, 2008", "November 12, 2008", "July 30, 2009", "July 30, 2009" ) # showing the problem> length(x)6> xd <- strptime(x, format = "%B %d, %Y") > length(xd)9> xd[1:9][1] "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" "2009-07-30" [6] "2009-07-30" NA NA NA> length(strptime(rep(x, 2), format="%B %d, %Y"))[1] 9> strptime(rep(x, 2), format="%B %d, %Y")[1:12][1] "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" "2009-07-30" [6] "2009-07-30" "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" [11] "2009-07-30" "2009-07-30 Any pointer would be appreciated. L.
Gabor Grothendieck
2009-Aug-09 15:35 UTC
[Rd] Why is strptime always returning a vector of length 9 ?
Try this to see its components:> str(unclass(xd))List of 9 $ sec : num [1:6] 0 0 0 0 0 0 $ min : int [1:6] 0 0 0 0 0 0 $ hour : int [1:6] 0 0 0 0 0 0 $ mday : int [1:6] 9 31 12 12 30 30 $ mon : int [1:6] 2 4 10 10 6 6 $ year : int [1:6] 107 107 108 108 109 109 $ wday : int [1:6] 5 4 3 3 4 4 $ yday : int [1:6] 67 150 316 316 210 210 $ isdst: int [1:6] 0 1 0 0 1 1 and read R News 4/1 for more. On Sun, Aug 9, 2009 at 10:20 AM, laurent<lgautier at gmail.com> wrote:> Dear List, > > > I am having an issue with strptime (see below). > I can reproduce it on R-2.8, R-2.9, and R-2.10-dev, I tempted to see > either a bug or my misunderstanding (and then I just don't currently see > where). > > # setup: > x <- c("March 09, 2007", "May 31, 2007", "November 12, 2008", "November > 12, 2008", "July 30, 2009", "July 30, 2009" ) > > # showing the problem >> length(x) > 6 >> xd <- strptime(x, format = "%B %d, %Y") >> length(xd) > 9 >> xd[1:9] > [1] "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" "2009-07-30" > [6] "2009-07-30" NA ? ? ? ? ? NA ? ? ? ? ? NA >> length(strptime(rep(x, 2), format="%B %d, %Y")) > [1] 9 >> strptime(rep(x, 2), format="%B %d, %Y")[1:12] > ?[1] "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" "2009-07-30" > ?[6] "2009-07-30" "2007-03-09" "2007-05-31" "2008-11-12" "2008-11-12" > [11] "2009-07-30" "2009-07-30 > > Any pointer would be appreciated. > > > > L. > > ______________________________________________ > R-devel at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel >