I've always found the chron library to be useful for tasks like this:> x <- round(runif(10)*100000, digits=0) > y <- as.Date(x, origin="1970-01-01") > library(chron) > days(y)[1] 7 25 26 25 10 24 1 31 12 8 31 Levels: 1 < 2 < 3 < 4 < 5 < 6 < 7 < 8 < 9 < 10 < 11 < 12 < 13 < ... < 31 Notice that it returns the days as factors. - Phil Spector Statistical Computing Facility Department of Statistics UC Berkeley On May 24, 2011, at 10:19 AM, Kang Min wrote:> I have another question - > > I'd like to extract dates from a vector of yyyy-mm-dd, so I just want > the dd. > > x <- round(runif(10)*100000, digits=0) > y <- as.Date(x, origin="1970-01-01") > > I tried this based on the code that Jim provided, but it just printed > the whole date. I think I just need to tweak it a little, but haven't > been able to figure it out.
Thanks Phil, chron is good. On May 25, 1:34?am, Phil Spector <spec... at stat.berkeley.edu> wrote:> I've always found the chron library to be useful for > tasks like this: > > > x <- round(runif(10)*100000, digits=0) > > y <- as.Date(x, origin="1970-01-01") > > library(chron) > > days(y) > > ? [1] 7 ?25 26 25 10 24 1 ?31 12 8 > 31 Levels: 1 < 2 < 3 < 4 < 5 < 6 < 7 < 8 < 9 < 10 < 11 < 12 < 13 < ... < 31 > > Notice that it returns the days as factors. > > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? - Phil Spector > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Statistical Computing Facility > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?Department of Statistics > ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?UC Berkeley > > On May 24, 2011, at 10:19 AM, Kang Min wrote: > > > I have another question - > > > I'd like to extract dates from a vector of yyyy-mm-dd, so I just want > > the dd. > > > x <- round(runif(10)*100000, digits=0) > > y <- as.Date(x, origin="1970-01-01") > > > I tried this based on the code that Jim provided, but it just printed > > the whole date. I think I just need to tweak it a little, but haven't > > been able to figure it out. > > ______________________________________________ > R-h... at r-project.org mailing listhttps://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guidehttp://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.
On May 24, 2011, at 1:34 PM, Phil Spector wrote:> I've always found the chron library to be useful for > tasks like this: > >> x <- round(runif(10)*100000, digits=0) >> y <- as.Date(x, origin="1970-01-01") >> library(chron) >> days(y) > [1] 7 25 26 25 10 24 1 31 12 8 31 Levels: 1 < 2 < 3 < 4 < 5 < 6 < > 7 < 8 < 9 < 10 < 11 < 12 < 13 < ... < 31 > > Notice that it returns the days as factors.Could also use as.POSIXlt which is a base function. POSIXlt objects are internally a list of integers with a day of the month entry: > as.POSIXlt(y)$mday [1] 27 24 11 14 17 5 7 16 2 12 So take your pick: character, factor or numeric values can be produced. -- David.> - Phil Spector > Statistical Computing Facility > Department of Statistics > UC Berkeley > > On May 24, 2011, at 10:19 AM, Kang Min wrote: > >> I have another question - >> >> I'd like to extract dates from a vector of yyyy-mm-dd, so I just want >> the dd. >> >> x <- round(runif(10)*100000, digits=0) >> y <- as.Date(x, origin="1970-01-01") >> >> I tried this based on the code that Jim provided, but it just printed >> the whole date. I think I just need to tweak it a little, but haven't >> been able to figure it out. > > ______________________________________________ > R-help at r-project.org mailing list > 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.David Winsemius, MD West Hartford, CT