我正在嘗試繪制具有隨機效應的負二項式回歸模型的觀察線與估計線,其中該曲線考慮了所采用模型的結構。
資料和模型擬合如下:
d.AD <- data.frame(treatment = gl(12,12),
treatment2 = gl(4,1,36),
counts = rpois(144, 4.03),
treatment3 = gl(3,4,36),
ID = gl(12,12))
d.AD$treatment2 = as.integer(d.AD$treatment2)
d.AD$treatment3 = as.factor(d.AD$treatment3)
d.AD$ID = as.factor(d.AD$ID)
library(ggplot2)
library(lme4)
mode1A <- glmer.nb(counts~treatment3*poly(treatment2, 2) (1|ID),
data=d.AD, verbose=F)
我打算執行的圖表是這樣的:
嘗試如下:
d.AD$de6 <- with(d.AD,counts)
ggplot(d.AD, aes(treatment3, treatment2, de6))
geom_point()
geom_point(aes(y = fitted(mode1A)), colour = "black")
geom_line(aes(y = predict(mode1A, d.AD["treatment3"], d.AD["treatment2"],
type = "response")), colour = "black")
theme(axis.text.x = element_text(size = 20,color = "black"),
axis.text.y = element_text(size = 20,color = "black"),
axis.text = element_text(size = 25))
但是,我面臨以下錯誤:
setParams(object, newparams) 中的錯誤:應將引數指定為包含 {"beta", "theta"} 元素的串列
uj5u.com熱心網友回復:
這個怎么樣:
d.AD <- data.frame(treatment = gl(12,12),
treatment2 = gl(4,1,36),
counts = rpois(144, 4.03),
treatment3 = gl(3,4,36),
ID = gl(12,12))
d.AD$treatment2 = as.integer(d.AD$treatment2)
d.AD$treatment3 = as.factor(d.AD$treatment3)
d.AD$ID = as.factor(d.AD$ID)
library(ggplot2)
library(lme4)
#> Loading required package: Matrix
library(ggeffects)
mode1A <- glmer.nb(counts~treatment3*poly(treatment2, 2) (1|ID),
data=d.AD, verbose=F)
#> Warning in theta.ml(Y, mu, weights = object@resp$weights, limit = limit, :
#> iteration limit reached
e <- ggpredict(mode1A, terms=c("treatment2 [all]", "treatment3"), type="re")
plot(e, rawdata=TRUE, ci=FALSE)
由reprex 包(v2.0.1)創建于 2022-06-05
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/485859.html
上一篇:優化繪圖的資料結構