【问题标题】:Regression with binary variables: should have 4 regression lines, only getting 1.带二元变量的回归:应该有 4 条回归线,只有 1 条。
【发布时间】:2013-01-09 22:17:47
【问题描述】:

我的模型中有两个二元变量,所以我应该得到一个带有 4 条回归线的图,但我只得到 1 条线。如何绘制所有 4 个?

model<-lm(Pos.Percent~aum+long.short+Op.Der,data=new.reg)
        Pos.Percent long.short Op.Der    aum
[1,]       76.92          1      2      76.90
[2,]      100.00          1      2       8.10
[3,]       58.62          2      1      23.00
[4,]       60.00          1      1      15.00
[5,]       89.36          2      1      35.96
[6,]       82.50          2      1     263.49

【问题讨论】:

  • 你想得到什么?你说你想要一个情节,但你没有显示情节或制作情节的命令。您的模型有 2 个分类 IV 加上一个明显连续的 IV。您的模型声明下的数据行是什么?
  • 我做的所有情节都没有帮助,所以我没有发布它们。我使用 plot(model) 来获取摘要图,但它没有给我实际的回归线。由于我有 2 个分类 IV,我应该得到 4 条回归线。我想同时查看所有 4 条回归线的图。
  • 我认为这是题外话。但是这种事情对于 ggplot2 包来说是最简单的——看起来你想要 library(ggplot2); ggplot(new.reg, aes(x=aum, y=Pos.Percent, colour=long.short, shape=Op.Der)) + geom_point() + geom_smooth(method="lm")
  • 或者可能更好(取决于您希望如何处理交互)是 ggplot(new.reg, aes(x=aum, y=Pos.Percent)) + geom_point() + geom_smooth(method= "lm") + facet_grid(long.short~Op.Der)
  • new.reg$long.short和new.reg$Op.Der的模式是什么?看起来您希望它们成为因子,但它们实际上是数字。也许您想对他们交互的每个级别进行建模。

标签: r regression


【解决方案1】:

这不是一个很明确的问题。但我推断你想要一个单独的回归线 Pos.Percent on aum 为你的两个二进制变量的每个组合(顺便说一句,这不是你的 lm() 命令估计的 - 但这是另一个问题)。

为此获得良好绘图的一种简单方法是使用 R 中的 ggplot2 库:

library(ggplot2)

ggplot(new.reg, aes(x=aum, y=Pos.Percent)) + 
  geom_point() +   
  geom_smooth(method="lm") + 
  facet_grid(long.short~Op.Der) 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-11-05
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 1970-01-01
    • 2021-01-02
    • 2022-08-03
    相关资源
    最近更新 更多