Çoğaltılmış veri kümesinde çok düzeyli regresyon modeli Çoğaltılan verilere (Amelia ile oluşturulmuş) çok düzeyli bir model çalıştırmaya çalışıyorum; örnek N, grup = 24 ile kümelenmiş örnek dayanmaktadır = 150.R (Amelia, zelig, lme4)
library("ZeligMultilevel")
ML.model.0 <- zelig(dv~1 + tag(1|group), model="ls.mixed",
data=a.out$imputations)
summary(ML.model.0)
Bu kod aşağıdaki hata kodu üretir: bir en küçük kareler regresyon çalıştırmak
Error in object[[1]]$result$call :
$ operator not defined for this S4 class
, çalışır:
model.0 <- zelig(dv~1, model="ls", data=a.out$imputations)
m.0 <- coef(summary(model.0))
print(m.0, digits = 2)
Value Std. Error t-stat p-value
[1,] 45 0.34 130 2.6e-285
çalışma örneği'u sunmaktan mutluluk duyarız.
require(Zelig)
require(Amelia)
require(ZeligMultilevel)
data(freetrade)
length(freetrade$country) #grouping variable
#Imputation of missing data
a.out <- amelia(freetrade, m=5, ts="year", cs="country")
# Models: (1) OLS; (2) multi-level
model.0 <- zelig(polity~1, model="ls", data=a.out$imputations)
m.0 <- coef(summary(model.0))
print(m.0, digits = 2)
ML.model.0 <- zelig(polity~1 + tag(1|country), model="ls.mixed", data=a.out$imputations)
summary(ML.model.0)
Sorunun, Zelig'in Amelia'nın mi sınıfı ile nasıl etkileştiği ile ilgili olabileceğini düşünüyorum. Bu yüzden alternatif bir R paketine yöneldim: lme4. Ben diff[[5]]
vb diff[[4]]
, diff[[3]]
tarafından Yine de, bu kombine veri kümesi için aslında sonuç olup olmadığını merak ediyorum değiştirdiğinizde
[[1]]
[1] 5
[[2]]
NULL
[[3]]
NULL
[[4]]
NULL
[[5]]
Linear mixed model fit by REML
Formula: polity ~ 1 + (1 | country)
Data: data.to.use
AIC BIC logLik deviance REMLdev
1006 1015 -499.9 1002 999.9
Random effects:
Groups Name Variance Std.Dev.
country (Intercept) 14.609 3.8222
Residual 17.839 4.2236
Number of obs: 171, groups: country, 9
Fixed effects:
Estimate Std. Error t value
(Intercept) 2.878 1.314 2.19
sonuçları
aynı kalır:require(lme4)
write.amelia(obj=a.out, file.stem="inmi", format="csv", na="NA")
diff <-list(5) # a list to store each model, 5 is the number of the imputed datasets
for (i in 1:5) {
file.name <- paste("inmi", 5 ,".csv",sep="")
data.to.use <- read.csv(file.name)
diff[[5]] <- lmer(polity ~ 1 + (1 | country),
data = data.to.use)}
diff
sonuç şudur veya tek bir imputed veri kümesi için. Düşüncesi olan var mı? Teşekkürler!
Bakım biz oynama işini görecek bir örnek sunmak için? –
Teşekkürler Roman. Çalışan bir örnek verdim. Hatayı nasıl düzeltebileceğiniz hakkında bir fikrin var mı? Bu harika olurdu! – TiF
Özet yönteminde bir hata olması gerekir. Eğer yardımcı olursa, her bir denemenin katsayılarına tek tek erişebilirsiniz (örn. 'Coef (ML.model.0 $ imp1 $ sonuç) '). –