我最近开始使用R并且遇到了这个问题,因此,当我想使用对数变量y的对数标度绘制glm回归输出时,它不起作用,即使我的X绝对值也不会随着数字而变化( (年龄值)到年龄(值的名称),要解释更多,这就是我所做的:
reg=glm(visites~age, data=database, family=poisson)
y = predict(reg, type="response",newdata=data.frame(age=66:96))
par(mfrow=c(1,2))
plot(66:96,y,type="l")
plot(66:96,y,type="l", log = "y")
答案 0 :(得分:0)
当轴的范围和位置很小时,您不会看到很大的曲率(由log="y"
引起)。如果我们“移动”(接近0)和“缩放”(扩展),我们会发现x
和y
数据之间具有相同基本关系的曲线截然不同。
x <- 66:96
# an approximation of your data
y <- 6.5 - 0.8 * (seq_along(x) - 1) / length(x)
par(mfrow = c(2, 3))
plot(x, y, type = "l", log = "y", main = "Original")
y1 <- y - min(y) + 1
plot(x, y1, type = "l", log = "y", main = "Shifted")
y2 <- y - min(y) + 0.1
plot(x, y2, type = "l", log = "y", main = "Shifted More")
y3 <- 1000 * y
plot(x, y3, type = "l", log = "y", main = "Scaled")
y4 <- 1000 * (y - min(y)) + 1
plot(x, y4, type = "l", log = "y", main = "Shifted, Scaled")
y4 <- 1000 * (y - min(y)) + 0.1
plot(x, y4, type = "l", log = "y", main = "Shifted More, Scaled")