bdsBlock {bdsmatrix} | R Documentation |
Block diagonal matrices.
Description
Create a block-diagonal matrix of ones.
Usage
bdsBlock(id, group)
Arguments
id |
the identifier list. This will become the dimnames of the final matrix, and must be a set of unique values. It's length determines the dimension of the final matrix |
group |
a vector giving the grouping structure. All rows/cols belonging to a given group will form a block of 1's in the final matrix. |
Value
a block-diagonal matrix of class bdsmatrix
See Also
bdsmatrix, bdsI
Examples
id <- letters[1:10]
group <- c(1,1,3,2,3,3,2,3,2,4)
bdsBlock(id, group)
## Not run:
a b d g i c e f h j
a 1 1 0 0 0 0 0 0 0 0
b 1 1 0 0 0 0 0 0 0 0
d 0 0 1 1 1 0 0 0 0 0
g 0 0 1 1 1 0 0 0 0 0
i 0 0 1 1 1 0 0 0 0 0
c 0 0 0 0 0 1 1 1 1 0
e 0 0 0 0 0 1 1 1 1 0
f 0 0 0 0 0 1 1 1 1 0
h 0 0 0 0 0 1 1 1 1 0
j 0 0 0 0 0 0 0 0 0 1
# Create the matrices for a sparse nested fit of family within city
group <- paste(mydata$city, mydata$family, sep='/')
mat1 <- bdsI(group)
mat2 <- bdsBlock(group, mydata$city)
fit <- coxme(Surv(time, status) ~ age + sex + (1|group), data=mydata,
varlist=list(mat1, mat2))
## End(Not run)
[Package bdsmatrix version 1.3-7 Index]