[R] levels values of cut()

Prof Brian Ripley ripley at stats.ox.ac.uk
Sat Aug 9 12:12:41 CEST 2008


On Sat, 9 Aug 2008, baptiste auguie wrote:

> Dear list,
>
> I have the following example, from which I am hoping to retrieve numeric 
> values of the factor levels (that is, without the brackets):
>
>> 
>> x <- seq(1, 15, length=100)
>> y <- sin(x)
>> 
>> my.cuts <- cut(which(abs(y) < 1e-1), 3)
>> levels(my.cuts)
>
> hist() does not suit me for this, as it does not necessarily respect the 
> number of breaks.
>
> getAnywhere hasn't got me very far: I cannot seem to find a readable code for 
> the built-in cut function in the base library. I think getMethod should do it 
> but I don't understand the arguments to pass.

Not getMethod (that's for S4 methods).  Just type cut.default at the R 
prompt.

However, try

example(cut)
foo <- levels(cut(aaa, 3))
lims <- matrix(nrow=length(foo), ncol=2)
lims[,1] <- as.numeric( sub("\\((.+),.*", "\\1", foo) )
lims[,2] <- as.numeric( sub("[^,]*,([^]]*)\\]", "\\1", foo) )

-- 
Brian D. Ripley,                  ripley at stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595



More information about the R-help mailing list