我想创建一个类似于David Robinson的方差解释博客上的这个的图表:
我认为除了填充可信区间和后验曲线之间的部分,我已经理解了。如果有人知道如何做到这一点,能给予一些建议就太好了。
以下是示例代码:
library(ebbr)
library(ggplot2)
library(dplyr)
sample<- data.frame(id=factor(1:10), yes=c(20, 33, 44, 51, 50, 50, 66, 41, 91, 59),
total=rep(100, 10))
sample<-
sample %>%
mutate(rate=yes/total)
pri<-
sample %>%
ebb_fit_prior(yes, total)
sam.pri<- augment(pri, data=sample)
post<- function(ID){
a<-
sam.pri %>%
filter(id==ID)
ggplot(data=a, aes(x=rate))+
stat_function(geom="line", col="black", size=1.1, fun=function(x)
dbeta(x, a$.alpha1, a$.beta1))+
stat_function(geom="line", lty=2, size=1.1,
fun=function(x) dbeta(x, pri$parameters$alpha, pri$parameters$beta))+
geom_segment(aes(x=a$.low, y=0, xend=a$.low, yend=.5), col="red", size=1.05)+
geom_segment(aes(x = a$.high, y=0, xend=a$.high, yend=.5), col="red", size=1.05)+
geom_segment(aes(x=a$.low, y=.25, xend=a$.high, yend=.25), col="red", size=1.05)+
xlim(0,1)
}
post("10")