[R] Extracting day of month from Date objects

David Winsemius dwinsemius at comcast.net
Tue May 24 20:45:49 CEST 2011


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



More information about the R-help mailing list