【问题标题】:How to do multiple logistic regressions in ggplot2?如何在ggplot2中进行多重逻辑回归?
【发布时间】:2018-03-05 20:39:02
【问题描述】:

我用以下代码和数据创建了一个图表:

ggplot(data.frame, aes(x=Score, y=Year, col=Position)) +
  geom_smooth(method="lm", se=FALSE).

Year   Position   Score
2010   QB         16.5
2011   QB         15.4
2012   QB         16.1
2013   QB         14.3
2014   QB         13.8
2010   RB         14.2
2011   RB         13.9
2012   RB         13.9
2013   RB         11.8
2014   RB         11.6
2010   WR         11.4
2011   WR         12.4
2012   WR         10.4
2013   WR         8.8
2014   WR         9.7

我的目标是用下面的数据做一个类似的图表,除了逻辑回归,因为 Y 值 (Score1) 是二元的。我尝试将method="lm" 更改为method="Binominal",但没有奏效。任何人都可以帮忙吗?我更喜欢它在 ggplot 中完成,以便图表在组成上看起来尽可能相似。

Score1 Position Score2
0   QB         16.5
0   QB         15.4
1   QB         16.1
0   QB         14.3
1   QB         13.8
1   RB         14.2
1   RB         13.9
1   RB         13.9
0   RB         11.8
0   RB         11.6
1   WR         11.4
1   WR         12.4
0   WR         10.4
1   WR         8.8
1   WR         9.7

【问题讨论】:

    标签: r ggplot2 logistic-regression


    【解决方案1】:

    正确的做法是

    ggplot(data.frame, aes(x=Score2, y=Score1, col=Position)) +
    +     geom_smooth(method="glm",method.args = list(family = "binomial"), se=FALSE)
    

    但是,Score1 应该为 0 或 1,因此您必须转换类并可能制作多个绘图。

    【讨论】:

      【解决方案2】:

      使用stat_smooth而不是geom_smooth,像这样:

      ggplot(data.frame, aes(x=Score, y=Year, col=Position)) + stat_smooth(method="glm", family="binomial",se=fALSE)

      编辑:您可能需要qplot,以下链接末尾有一个逻辑回归示例https://www.rdocumentation.org/packages/ggplot2/versions/0.9.0/topics/stat_smooth

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-29
        • 1970-01-01
        • 2013-06-05
        • 2015-12-19
        • 2015-02-21
        • 2018-08-11
        相关资源
        最近更新 更多