[R] Classification

Marc Schwartz marc_schwartz at comcast.net
Wed Jul 18 20:12:37 CEST 2007


On Wed, 2007-07-18 at 12:53 -0500, Marc Schwartz wrote:
> On Wed, 2007-07-18 at 19:36 +0200, Ing. Michal Kneifl, Ph.D. wrote:
> > Hi,
> > I am also a quite new user of R and would like to ask you for help:
> > I have a data frame where all columns are numeric variables. My aim is  
> > to convert one columnt in factors.
> > Example:
> > MD
> > 0.2
> > 0.1
> > 0.8
> > 0.3
> > 0.7
> > 0.6
> > 0.01
> > 0.2
> > 0.5
> > 1
> > 1
> > 
> > 
> > I want to make classes:
> > 0-0.2 A
> > 0.21-0.4 B
> > 0.41-0.6 C
> > ..... and so on
> > 
> > So after classification I wil get:
> > MD
> > A
> > A
> > D
> > B
> > .
> > .
> > .
> > and so on
> > 
> > Please could you give an advice to a newbie?
> > Thanks a lot in advance..
> > 
> > Michael
> 
> See ?cut
> 
> You can then do something like:
> 
> > DF
>      MD
> 1  0.20
> 2  0.10
> 3  0.80
> 4  0.30
> 5  0.70
> 6  0.60
> 7  0.01
> 8  0.20
> 9  0.50
> 10 1.00
> 11 1.00
> 
> 
> > cut(DF$MD, breaks = c(seq(0, 1, .2)), labels = LETTERS[1:5])
>  [1] A A D B D C A A C E E
> Levels: A B C D E

For precision, let's clean that up as I just realized that I left the
remnants of c() in there from an alternative solution, which is not
needed here:

  cut(DF$MD, breaks = seq(0, 1, .2), labels = LETTERS[1:5])

Marc



More information about the R-help mailing list