【发布时间】:2020-02-11 14:49:48
【问题描述】:
我正在尝试创建一个图表,表示二进制数据(临床症状)与连续预测变量(日志拷贝数)的逻辑回归。我可以使用 glm() 生成模型没问题,但我在使用 lines() 函数实际绘制回归表示时遇到问题。这是我的数据的样子。
df.min <- structure(list(clinical.signs = structure(c(1L, 1L, 1L, 1L, 1L,
2L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 1L, 2L, 1L,
1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 2L, 2L, 2L,
1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 1L, 1L, 2L, 2L, 1L, 2L, 1L, 2L,
2L, 2L, 2L, 1L, 1L, 2L, 1L, 1L, 2L, 2L, 2L, 2L, 1L, 1L, 2L, 2L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 1L, 2L, 1L, 2L, 1L, 1L,
1L, 2L, 1L, 1L, 1L, 1L, 1L, 2L, 1L, 2L, 1L, 2L, 2L, 2L, 1L, 2L,
2L, 2L, 1L, 2L, 2L, 2L, 2L, 2L, 2L), .Label = c("0", "1"), class = "factor"),
log.copy.num = c(0, 5.43372200355424, 0, 0, 0, 0, 0, 4.18965474202643,
3.42751468997953, 0, 0, 0, 0, 0, 0.824175442966349, 0, 0,
0, 0, 0, 2.97552956623647, 1.91692261218206, 1.43270073393405,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2.13179677201376, 0,
0, 0, 3.53805656437935, 0, 0, 0, 0, 0, 0, 0, 4.26127043353808,
2.54160199346455, 1.15057202759882, 4.88280192258637, 0,
0, 0, 0, 0, 3.62434093297637, 0, 0, 0, 0, 0, 0, 3.45946628978613,
0, 0, 0, 7.40913644392013, 0, 0, 0, 0, 0, 0, 0, 3.35689712276558,
0, 0, 0, 0, 4.25518708733893, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3.15700042115011, 0, 2.07317192866624, 0, 7.85979918056211,
3.16124671203156, 0, 2.20386912005489, 5.04985600724954,
0, 1.45395300959371, 0, 3.28091121578765, 3.83945231259331,
2.54160199346455, 2.66722820658195, 2.2512917986065, 7.53955882930103,
6.30261897574491, 6.96696713861398)), class = c("tbl_df",
"tbl", "data.frame"), row.names = c(NA, -110L)
)
还有我的剧本
#logistic regression using glm
logimodel <- glm(clinical.signs ~ log.copy.num, data = df.min, family = "binomial")
summary(logimodel)
#plot the logisitc regression above
xaxis <- seq(min(df.min$log.copy.num), max(df.min$log.copy.num), 0.1)
yaxis <- predict(logimodel, list(log.copy.num=xaxis), type = "response")
plot(xaxis, yaxis)
plot(df.min$log.copy.num, df.min$clinical.signs)
lines(xaxis,yaxis, col = "blue")
感谢您对我确信这是一个愚蠢的疏忽的任何指导!
【问题讨论】:
-
我觉得还可以,你能详细说明你的情节有什么问题吗?
-
或者您在 log.copy.num 列中有 NA 吗?如果是这种情况,那么 min、max 和 predict 将引发错误。
-
刚刚添加了一个最小的可重现数据框来协助故障排除,据我所知,log.copy.num 中没有 NA,只有零
-
酷。感谢您分享数据。见下文
标签: r plot line logistic-regression glm