2014-02-27 2 views
0

model.matrix를 사용하여 어떻게 보이는 매트릭스를 만들 수 있습니까? 특정 방식으로 model.matrix를 만드는 방법은 무엇입니까?

 [,1] [,2] [,3] [,4] [,5] [,6] 
[1,] 1 1 0 0 0 0 
[2,] 1 2 0 0 0 0 
[3,] 1 3 0 0 0 0 
[4,] 0 0 1 1 0 0 
[5,] 0 0 1 2 0 0 
[6,] 0 0 1 3 0 0 
[7,] 0 0 0 0 1 1 
[8,] 0 0 0 0 1 2 
[9,] 0 0 0 0 1 3 

나는

fit = lmer(Temp ~ 1 + (1 + Time|Id), data = Data) 
getME(fit, name = c("Z")) 

Time = rep(1:3, 3) 

그리고 이드가

Id = c(0L, cumsum(diff(Time) < 0)) 

이 내가 얻을 수있는만큼 가까이에 의해 최초의 매트릭스를 생산했다.

id = rep(c("a","b","c"),each = 3) 
Z = model.matrix(~0+id) 

    [,1] [,2] [,3] 
1 1 0 0 
2 1 0 0 
3 1 0 0 
4 0 1 0 
5 0 1 0 
6 0 1 0 
7 0 0 1 
8 0 0 1 
9 0 0 1 
+0

첫 번째 매트릭스의 요소를 설명 할 수 있습니까? 첫 번째 행렬처럼 보이는 행렬을 얻는 것이 쉽지는 않지만, 원하는 행렬이 될 것이라고는 생각하지 않습니다 ... –

답변

2

나는 당신이하려고하는 것을 잘 모르겠지만, 당신을 위해이 일을합니까?

val = rep(1:3,3) 
z = model.matrix(~0+id+id:val)