[R] value.labels

Heinz Tuechler tuechler at gmx.at
Fri Aug 12 02:53:41 CEST 2011


At 12.08.2011 11:05 +1200, Rolf Turner wrote:
>On 12/08/11 11:34, Heinz Tuechler wrote:
>>At 12.08.2011 09:11 +1200, Rolf Turner wrote:
>>>On 12/08/11 09:59, Heinz Tuechler wrote:
>>>>At 11.08.2011 21:50 +0300, Zeki Çatav wrote:
>>>>>Prş, 2011-08-11 tarihinde 19:27 +0200 saatinde, Uwe Ligges yazdı:
>>>>> >
>>>>> > On 11.08.2011 19:22, David Winsemius wrote:
>>>>> > >
>>>>> > > On Aug 11, 2011, at 11:42 AM, Uwe Ligges wrote:
>>>>> > >
>>>>> > >>
>>>>> > >>
>>>>> > >> On 11.08.2011 16:10, zcatav wrote:
>>>>> > >>> Hello R people,
>>>>> > >>>
>>>>> > >>> I have a "data.frame". Status variable has 3 values. 0->alive,
>>>>> > >>> 1->dead and
>>>>> > >>> 2->missed..........................
>>>>> > .........................................
>>>>> > As I understood the question, just how to rename the levels was the
>>>>> > original question.
>>>>> >
>>>>> > Uwe
>>>>>
>>>>>I don't want to rename levels or converting from numeric to string. I
>>>>>want to add each corresponding levels value, a label, as in SPSS.
>>>>>Level 0 labeled with alive,
>>>>>level 1 labeled with dead and
>>>>>level 2 labeled with missed.
>>>>
>>>>This is not possible with a factor, because 
>>>>factor levels can only be positive integers.
>>>
>>>That is just plain (ridiculously) wrong. RTFM.
>>>
>>>cheers,
>>>
>>>Rolf Turner
>>
>>So, how would you construct a factor with 
>>levels 0, 1, 2 and labels alive, dead, and 
>>missed, as the original post asked for?
>>
>>Heinz
>
>As I said, RTFM. But for completeness:
>
>x <- sample(0:2,100,TRUE)
>y <- factor(x,labels=c("alive","dead","missed"))
>
>Duhhh.
>
>cheers,
>
>Rolf Turner

Maybe you would like to look at the structure.

str(y)
Factor w/ 3 levels "alive","dead",..: 3 1 2 2 3 3 2 1 1 1 ...

or

dput(y)
structure(c(3L, 1L, 2L, 2L, 3L, 3L, 2L, 1L, 1L, 1L, 2L, 1L, 3L,
1L, 2L, 3L, 2L, 2L, 1L, 3L, 1L, 3L, 1L, 3L, 1L, 2L, 1L, 2L, 1L,
1L, 3L, 1L, 2L, 3L, 1L, 2L, 2L, 1L, 2L, 1L, 2L, 1L, 2L, 1L, 3L,
2L, 1L, 2L, 3L, 3L, 2L, 1L, 1L, 2L, 3L, 3L, 2L, 1L, 3L, 1L, 1L,
2L, 2L, 1L, 2L, 1L, 2L, 3L, 3L, 3L, 2L, 3L, 3L, 1L, 2L, 3L, 2L,
3L, 1L, 3L, 1L, 1L, 2L, 2L, 1L, 2L, 2L, 3L, 2L, 2L, 1L, 1L, 1L,
2L, 3L, 3L, 2L, 1L, 2L, 3L), .Label = c("alive", "dead", "missed"
), class = "factor")
 >

Anything else but positive integers?

Heinz



More information about the R-help mailing list