【发布时间】:2012-02-13 10:12:38
【问题描述】:
我在 R (glm) 中运行逻辑回归。然后我设法绘制结果。我的代码如下:
temperature.glm = glm(Response~Temperature, data=mydata,family=binomial)
plot(mydata$Temperature,mydata$Response, ,xlab="Temperature",ylab="Probability of Response")
curve(predict(temperature.glm,data.frame(Temperature=x),type="resp"),add=TRUE, col="red")
points(mydata$Temperature,fitted(temperature.glm),pch=20)
title(main="Response-Temperature with Fitted GLM Logistic Regression Line")
我的问题是:
- 如何在一张图中绘制两条逻辑回归曲线?
- 我从其他统计软件中获得了这两个系数。如何创建随机数据,插入这两组 coef(Set 1 和 Set 2),然后生成两条逻辑回归曲线?
模型:
SET 1
(Intercept) -88.4505
Temperature 2.9677
SET 2
(Intercept) -88.585533
Temperature 2.972168
mydata 有 2 列和约 700 行。
Response Temperature
1 29.33
1 30.37
1 29.52
1 29.66
1 29.57
1 30.04
1 30.58
1 30.41
1 29.61
1 30.51
1 30.91
1 30.74
1 29.91
1 29.99
1 29.99
1 29.99
1 29.99
1 29.99
1 29.99
1 30.71
0 29.56
0 29.56
0 29.56
0 29.56
0 29.56
0 29.57
0 29.51
【问题讨论】:
-
你为什么不能只调用两次
curve(或lines),并使用不同曲线的值? -
此外,如果您提供可重现的数据集,回答您的问题会容易得多。在这种情况下,我们无法访问
mydata,这让事情变得更加困难。 -
最后,删除了您的签名。如果您想让人们知道您是 Eddie,请在您的个人资料中填写您的姓名。欢迎来到 SO,顺便说一句。
-
如果您想并排绘制它们,请在您的
plot调用之前使用par(mfrow=c(1, 2))。否则,Richie 建议调用curve两次应该适用于覆盖两条曲线。 -
我不确定您是否要生成两个随机数据集,每个数据集都符合您的两个模型之一,但如果是这样,您可以尝试
rbinom(1000, 1, (1/(1+exp(-88.4505 + 2.9677*x)))(对于第一个模型,类似对于第二个,x是温度)。
标签: r regression