Я хотел бы запустить модель фиксированных эффектов с использованием OLS с взвешенными данными.
Поскольку здесь может возникнуть некоторая путаница, я хочу сказать, что я использовал здесь «фиксированные эффекты» в том смысле, который обычно подразумевают экономисты, то есть «в рамках модели» или, другими словами, индивидуально-специфические эффекты. На самом деле у меня есть «многоуровневые» данные, то есть наблюдения за людьми, и я хотел бы контролировать их регион происхождения (и иметь соответствующие кластерные стандартные ошибки).
Образец данных:
library(multilevel)
data(bhr2000)
weight <- runif(length(bhr2000$GRP),min=1,max=10)
bhr2000 <- data.frame(bhr2000,weight)
head(bhr2000)
GRP AF06 AF07 AP12 AP17 AP33 AP34 AS14 AS15 AS16 AS17 AS28 HRS RELIG weight
1 1 2 2 2 4 3 3 3 3 5 5 3 12 2 6.647987
2 1 3 3 3 1 4 3 3 4 3 3 3 11 1 6.851675
3 1 4 4 4 4 3 4 4 4 2 3 4 12 3 8.202567
4 1 3 4 4 4 3 3 3 3 3 3 4 9 3 1.872407
5 1 3 4 4 4 4 4 3 4 2 4 4 9 3 4.526455
6 1 3 3 3 3 4 4 3 3 3 3 4 8 1 8.236978
Я хотел бы оценить следующие модели:
AF06_ij = beta_0 + beta_1 AP34_ij + alpha_1 * (GRP == 1) + alpha_2 * (GRP==2) +... + e_ij
где я обращаюсь к конкретным лицам, а j - к группе, к которой они принадлежат.
Более того, я хотел бы, чтобы наблюдения взвешивались по weight
(весам выборки).
Однако я хотел бы получить «кластерные стандартные ошибки», чтобы отразить возможную гетероскедастичность GRP. Другими словами, E(e_ij)=0
, но Var(e_ij)=sigma_j^2
, где sigma_j может быть разным для каждого GRP
j.
Если я правильно понял, nlme
и lme4
могут оценивать только модели со случайными эффектами (или так называемые смешанные модели), но не модели с фиксированными эффектами в смысле внутри.
Я попробовал пакет plm
, который выглядел идеально для того, что я хотел сделать, но не допускает весов. Есть еще идеи?