假设我有以下数据集
bodysize=rnorm(20,30,2)
bodysize=sort(bodysize)
survive=c(0,0,0,0,0,1,0,1,0,0,1,1,0,1,1,1,0,1,1,1)
dat=as.data.frame(cbind(bodysize,survive))
我知道 glm plot 函数有几个不错的图可以向您展示适合性,但我仍然想创建一个初始图:
1) 原始数据点 2) 逻辑曲线和两者 3) 预测点 4) 和多个预测变量级别的聚合点
library(Hmisc)
plot(bodysize,survive,xlab="Body size",ylab="Probability of survival")
g=glm(survive~bodysize,family=binomial,dat)
curve(predict(g,data.frame(bodysize=x),type="resp"),add=TRUE)
points(bodysize,fitted(g),pch=20)
到这里一切都好。
现在我想绘制给定 x1 水平的真实数据存活率
dat$bd<-cut2(dat$bodysize,g=5,levels.mean=T)
AggBd<-aggregate(dat$survive,by=list(dat$bd),data=dat,FUN=mean)
plot(AggBd,add=TRUE)
#Doesn't work
我试图将 AggBd 与用于模型的数据集和所有其他东西相匹配,但我根本无法将两者绘制在一起。有没有解决的办法?我基本上想在同一轴上过度绘制最后一个图。
除了这个特定的任务,我经常想知道如何在二维图上过度使用不同的图来绘制不同的变量但具有相似的比例/范围。我将衷心感谢您的帮助。