[R] Converting a categorical variable to multiple dichotemousvariables

Dr. Pablo E. Verde PabloEmilio.Verde at uni-duesseldorf.de
Tue Apr 12 14:52:30 CEST 2011


Hi Shane,

An alternative is:

cat<-as.factor(c(1,1,3,2,4))
outer(cat, levels(cat), "==")+0

Cheers,

Pablo


----- Original Message ----- 
From: "andrija djurovic" <djandrija at gmail.com>
To: "Shane Phillips" <SPhillips at lexington1.net>
Cc: <r-help at r-project.org>
Sent: Tuesday, April 12, 2011 2:32 PM
Subject: Re: [R] Converting a categorical variable to multiple 
dichotemousvariables


> hi:
> here is one solution:
>
> cat<-as.factor(c(1,1,3,2,4))
> model.matrix(~cat-1,cat)
>
> cbind(cat,model.matrix(~cat-1,cat))
> Andrija
>
> On Tue, Apr 12, 2011 at 2:17 PM, Shane Phillips 
> <SPhillips at lexington1.net>wrote:
>
>> I have a categorical variable in a dataframe similar to the following...
>>
>> cat
>> 1
>> 1
>> 3
>> 2
>> 4
>>
>> I need to convert it to 4 dichotemous variables for each observations
>> like...
>>
>> cat1    cat2    cat3    cat4
>> 1       0       0       0
>> 1       0       0       0
>> 0       0       1       0
>> 0       1       0       0
>> 0       0       0       1
>>
>>
>> Thanks in advance!
>>
>> Shane
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html<http://www.r-project.org/posting-guide.html>
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide 
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



More information about the R-help mailing list