From ggrothendieck at gmail.com  Mon Dec 21 18:37:21 2009
From: ggrothendieck at gmail.com (Gabor Grothendieck)
Date: Mon, 21 Dec 2009 12:37:21 -0500
Subject: [Rd] cut.POSIXt problem with breaks= "quarter" (PR#14162)
In-Reply-To: <20091221124509.A2AFC282EFFB@mail.pubhealth.ku.dk>
References: <20091221124509.A2AFC282EFFB@mail.pubhealth.ku.dk>
Message-ID: <971536df0912210937o31c3c316jbbde4af6aac195c0@mail.gmail.com>

as.yearqtr in the zoo package could be used as a workaround until cut is fixed.

> as.yearqtr(as.Date(c("2009-03-21","2009-03-31")))
[1] "2009 Q1" "2009 Q1"

> as.Date(as.yearqtr(as.Date(c("2009-03-21","2009-03-31"))))
[1] "2009-01-01" "2009-01-01"

On Mon, Dec 21, 2009 at 7:45 AM,  <shmunde at googlemail.com> wrote:
> Full_Name: Qing Xia
> Version: 2.10.0
> OS: Windows XP
> Submission from: (NULL) (213.71.23.233)
>
>
> I find, when I use "cut" function to cut date-time objects based on breaks =
> "quarter", there exists a problem. It means, if the date-time has "JJJJ-MM-30"
> or "JJJJ-MM-31", then "cut" runs not correctly, it gives wrong levels. Detail
> can be found in the following R-Output:
>
> 1. correct Output levels, if there is no date-time "JJJJ-MM-30" or "JJJJ-MM-31"
>
>> x<- as.Date(c("2009-03-21","2009-03-24"))
>> cut(x, breaks= "quarter")
> [1] 2009-01-01 2009-01-01
> Levels: 2009-01-01
>
>
> 2. wrong Output levels, if there exists date-time "JJJJ-MM-30" or "JJJJ-MM-31"
>
>> x<- as.Date(c("2009-03-21","2009-03-30"))
>> cut(x, breaks= "quarter")
> [1] 2009-01-01 2009-01-01
> Levels: 2009-01-01 2009-04-01
>
>
>> x<- as.Date(c("2009-03-21","2009-03-31"))
>> cut(x, breaks= "quarter")
> [1] 2009-01-01 2009-01-01
> Levels: 2009-01-01 2009-04-01
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>



[Rd] cut.POSIXt problem with breaks= "quarter" (PR#14162)
Gabor Grothendieck