Матрица проектирования для несбалансированных данных - PullRequest
1 голос
/ 22 декабря 2011

Я пытаюсь придумать матрицу дизайна / матрицу фиктивных переменных, которая не сбалансирована (в контексте проекта моделирования).Неравные наблюдения в настоящее время моделируются следующим образом:

set.seed(1)
n_i <- as.matrix(round(runif(3,min=0, max=5)))
n_i
       [,1]
 [1,]    1
 [2,]    2
 [3,]    3

Я хотел бы создать матрицу следующей формы на основе смоделированных размеров выборки выше:

des <- cbind(c(1,rep(0,5)),c(0,rep(1,2),rep(0,3)), c(rep(0,3),rep(1,3)))

Существуют ли простые способыделать это без сложных петель?Нет необходимости добавлять, что мой реальный набор данных насчитывает тысячи наблюдений.Буду признателен за любую помощь в этом.

1 Ответ

2 голосов
/ 22 декабря 2011

Попробуйте это

Trt <- factor(x=rep(x=c(1, 2, 3), times=c(1, 2, 3)), labels=c("Trt1", "Trt2", "Trt3"))
model.matrix(~Trt-1, data=Trt)



  TrtTrt1 TrtTrt2 TrtTrt3
1       1       0       0
2       0       1       0
3       0       1       0
4       0       0       1
5       0       0       1
6       0       0       1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...