[R] model.matrix and missing values
    Martín Cañón 
    martincmd at hotmail.com
       
    Sun Nov  1 14:29:44 CET 2015
    
    
  
Hi to all.
I want to create a model matrix with variables that have missing values.
Recently I learned that na.pass/na.exclude and naresid are of great help in these type of cases (thanks, W. Dunlap).
Here's an example:
y <- c(1:5)
x1 <- c(1, 0, 1, 0, 1)
x2 <- c(1, NA, 1, NA, 1)
x3 <- c(NA, 0, 1, 0, NA)
mf <- model.frame(y ~ x1 + x2 + x3, na.action = "na.pass") 
mf
y x1 x2 x3
1 1  1  1 NA
2 2  0 NA  0
3 3  1  1  1
4 4  0 NA  0
5 5  1  1 NA
mm <- model.matrix(mf)
mm
 (Intercept) x1 x2 x3
3           1  1  1  1
attr(,"assign")
[1] 0 1 2 3
mm2 <- naresid(attr(mf, "na.action"), mm)
mm2
 (Intercept) x1 x2 x3
3           1  1  1  1
attr(,"assign")
[1] 0 1 2 3
As you can see, model.frame respects NA's. 
However, after model.matrix,  it doesn't work when I try to insert them in the right place with naresid.
Am I doing something wrong?
Thanks,
Martin
 		 	   		  
	[[alternative HTML version deleted]]
    
    
More information about the R-help
mailing list