gpt4 book ai didi

r - 绘制GLM回归方程并在GGPlot上平方R

转载 作者:行者123 更新时间:2023-12-03 09:42:18 25 4
gpt4 key购买 nike

我有这样的问题:

样本数据:

library(tidyverse)
library(ggpubr)
a <- mtcars
reorganized <- a %>% gather (-mpg, key = "var", value = "value")

g <- ggplot(reorganized, aes(y = value, x = var)) +
stat_smooth(method="glm", se=TRUE, fill=NA,
method.args = list(family = "binomial"), fullrange = F) +
geom_smooth(method="glm", fill='red',
method.args = list(family = "binomial")) +
stat_regline_equation(
aes(label = paste(..eq.label.., ..adj.rr.label.., sep = "~~~~"))
)+
geom_point(aes(), alpha=2/10, shape=21, fill="blue", colour="black", size=0.2) +
facet_wrap(~var, nrow=1)+
theme_bw()


数据是 reorganized数据帧,具有3列:mpg,var,value

使用此代码,我想用逻辑回归线绘制面,用散点图绘制方程。但是,公式看起来不正确,它们只有 y = b + ax的形式,有时Radj不在绘图中
enter image description here

如何在此图中绘制逻辑回归的正确公式?

最佳答案

似乎您正在尝试对非类别变量使用glm方法。这行不通。相反,您应该使用“黄土”或“ lm”方法。另外,要在每个构面内正确插入方程式,您可以控制方程式的位置和大小。代码如下(geom_smooth默认为“黄土”):

ggplot(reorganized, aes(y = value, x = mpg)) +
geom_smooth(se=TRUE, fill=NA, method.args=list(family="gaussian"), fullrange = F) +
stat_regline_equation( aes(label = paste(..eq.label.., ..adj.rr.label..,
sep = "~~~~")),
label.x.npc = "left", label.y.npc = "top", size = 2)+
geom_point(aes(), alpha=2/10, shape=21, fill="blue", colour="black", size=0.2) +
facet_wrap(~var, nrow=2)+
theme_bw()


It should look like this

默认情况下,geom_smooth设置为具有公式y〜x的黄土方法。这就是为什么方程式中只有y和x的原因。如果要使用其他公式,则应寻找如何在geom_smooth中自定义公式。

关于r - 绘制GLM回归方程并在GGPlot上平方R,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56660069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com