Skip to content

cut.POSIXt problem with breaks= "quarter" (PR#14162)

3 messages · shmunde at googlemail.com, Gabor Grothendieck, Brian Ripley

#
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"
[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"
[1] 2009-01-01 2009-01-01
Levels: 2009-01-01 2009-04-01
[1] 2009-01-01 2009-01-01
Levels: 2009-01-01 2009-04-01
#
as.yearqtr in the zoo package could be used as a workaround until cut is fixed.
[1] "2009 Q1" "2009 Q1"
[1] "2009-01-01" "2009-01-01"
On Mon, Dec 21, 2009 at 7:45 AM, <shmunde at googlemail.com> wrote:
1 day later
#
What exactly is the purported bug here?  It seems to me that the cuts 
are correct and the behaiour is as documented, but that you were not 
expecting empty levels.  If that bothers you, use

cut(x, breaks= "quarter")[,drop=TRUE]
On Mon, 21 Dec 2009, shmunde at googlemail.com wrote: