Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R-用分类和数字变量表示glmm(包MuMin和lme4)_R_Plot_Lme4 - Fatal编程技术网

R-用分类和数字变量表示glmm(包MuMin和lme4)

R-用分类和数字变量表示glmm(包MuMin和lme4),r,plot,lme4,R,Plot,Lme4,我有一个关于钩虫感染、性别(2个因素)、位置(2个因素)、年份、管理(2个因素)、血统(4个因素)和类似病毒血症的分类变量的表格,我有一个类似年龄的数字变量** 我做了一个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)+

我有一个关于钩虫感染、性别(2个因素)、位置(2个因素)、年份、管理(2个因素)、血统(4个因素)和类似病毒血症的分类变量的表格,我有一个类似年龄的数字变量**

我做了一个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))
我想表示感染概率(y)与年龄(x),但使用我的模型的估计值。平均值**

我尝试了以下脚本:

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()
#####

nseq如果你能做出一个可复制的例子(见),我愿意尝试一下。您需要将数据集发布到某个地方,或者找到一个适当复杂的数据集(例如,两个分类输入变量,其中一个需要平均,另一个由图形中的多行表示,以及一个连续输入变量).我不确定我是否解释得很好…我有我对模型的平均估计值,我想表示它,所以我想做预测一个可复制的例子的要点是,它可以更容易地解释你的目标,让人们进行实验。你看了链接了吗?是的,但是我不确定这个例子应该是什么,我做的是什么。我把这个例子添加到我的问题中
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()
#####
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")