R-代表glmm(Package MuMin和lme4),带有分类和数字变量

时间:2013-09-06 14:28:47

标签: r plot lme4

我有一张表有Ancylostoma的感染,性别(2因素),位置(2因素),年份,管理(2因子),血统(4因子)和病毒血症如分类变量,我有HL一个年龄像数字变量。**

我做了一个glmm:

glm_toxo<-glmer((Ancylostoma) ~ as.factor(Sexo)+(Edad)+as.factor(año)+as.factor(Manejo)+as.factor(Localizacion)+as.factor(Viremia.FeLV) +(Ancestria) +(HL)+as.factor(1|Nombre), family="binomial", data= data_silv)

dd_toxo <- dredge (glm_toxo)
a<- get.models(dd_toxo, subset = delta < 2)
b<-(model.avg(a))

我得到了这个结果

Model-averaged coefficients: 
                             Estimate Std. Error z value Pr(>|z|)    
(Intercept)                   -2.0222     0.8911   2.269   0.0233 *  
as.factor(Localizacion)PORT  -15.2935  2163.9182   0.007   0.9944    
as.factor(Localizacion)SMO    -3.0012     0.7606   3.946 7.95e-05 ***
as.factor(Manejo)SILV          1.8125     0.7799   2.324   0.0201 *  
Edad                          -0.1965     0.1032   1.904   0.0569 .  
as.factor(Sexo)M               0.5015     0.4681   1.071   0.2840    
HL                            -0.9381     1.4244   0.659   0.5102    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

我想表示感染的概率(y)与年龄(x),但使用我的模型的估计值.avg **

我试过这个脚本:

nseq <- function(x, len = length(x)) seq(min(x, na.rm = TRUE),max(x, na.rm=TRUE), length = len)

####
newdata <- as.data.frame(lapply(lapply(data_silv[2:4], mean), rep, 213))
newdata$Edad <- nseq(data_silv$Edad, nrow(newdata))
(año <- sample(as.factor(data_silv$año),size=213,rep=T))
(Manejo <- sample(as.factor(data_silv$Manejo),size=213,rep=T))
(Sexo <- sample(as.factor(data_silv$Sexo),size=213,rep=T))
newdata <- as.data.frame(cbind(mean(data_silv$HL), año,Manejo,Sexo,
                 data_silv$Localizacion, nseq(data_silv$Edad, nrow(newdata)),
                 data_silv$Ancylostoma))
names(newdata) <- c("HL","año","Manejo","Sexo","Localizacion","Edad",
"Ancylostoma")


newdata$pred <- data.frame(
  model = sapply(a, predict, newdata = newdata),
  averaged.subset = predict(b, newdata, full = FALSE),
  averaged.full = predict(b, newdata, full = TRUE)
)

library(ggplot2)
ggplot(newdata,aes(x="Edad",y="pred",color="Localizacion")) + geom_line()
#####

但我没有图表......或者我有错误

有人知道用我的model.avg表示任何形式的分类和变量数字吗?但考虑到我只想表示感染概率与年龄,有两行:localizacion1和localizacion2 ......(本地化有2个因素)。**

我的原始日期是这张表:

año <- sample(as.factor(2005:2009),size=213,rep=T)
riqueza <- sample((0:3),size=213,rep=T)
HL <- rnorm(213, mean=0.54, sd=0.13)

Ancylostoma <- sample(as.factor(0:1),size=213,rep=T)

Edad <- sample(as.factor(0:21),size=213,rep=T)
Manejo<- sample(c("CCC", "SILV"), 213, replace = TRUE)
Sexo<- sample(c("M", "H"), 213, replace = TRUE)
Localizacion<- sample(c("SMO", "DON", "PORT"), 213, replace = TRUE)
Ancestria<- sample(c("DON", "SMO", "F1", "F2"), 213, replace = TRUE)

newdata <- as.data.frame(cbind(HL,año,Manejo,Sexo,
                               Localizacion, Edad,Ancylostoma))


names(newdata) <- c("HL","año","Manejo","Sexo","Localizacion","Edad",
                    "Ancylostoma")

在那个日期我制作模型的估计值。然后我想做预测

谢谢,我不确定我是否在解释

我很抱歉我的英文

0 个答案:

没有答案