Re: [R] Design matrix not identity

About this list Date view Thread view Subject view Author view Attachment view

From: Peter Dalgaard (p.dalgaard@biostat.ku.dk)
Date: Thu 13 May 2004 - 02:37:11 EST


Message-id: <x2zn8d8uvc.fsf@biostat.ku.dk>

Patrik Waldmann <Patrik.Waldmann@genfys.slu.se> writes:

> Hello again,
>
> I was too quick before. What I was looking for was a function that
> constructs the design (or incidence) matrix (X in a linear model) from a
> factor. Uwe Ligges suggested using model.matrix and this does almost what I
> want, but it is first necessary to construct a data variable. It also asigns
> ones to all rows of the first column (because this is set to be the
> contrast, not really what I want - see below). Maybe time for a function
> that just converts a factor into a design matrix?
>
> I have a factor
> factor<-as.factor(c(1,1,2,2,3,3,3))

That could get you in trouble by masking the factor() function...

> and I want a matrix
> 1 0 0
> 1 0 0
> 0 1 0
> 0 1 0
> 0 0 1
> 0 0 1
> 0 0 1

 f <- factor(c(1,1,2,2,3,3,3))
 model.matrix(~f-1)

Or, a different approach:

 diag(3)[f,]

-- 
   O__  ---- Peter Dalgaard             Blegdamsvej 3  
  c/ /'_ --- Dept. of Biostatistics     2200 Cph. N   
 (*) \(*) -- University of Copenhagen   Denmark      Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard@biostat.ku.dk)             FAX: (+45) 35327907

______________________________________________ R-help@stat.math.ethz.ch mailing list https://www.stat.math.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html


About this list Date view Thread view Subject view Author view Attachment view

This archive was generated by hypermail 2.1.3 : Mon 31 May 2004 - 23:05:09 EST