是什么将R公式y〜1是什么意思?(What does the R formula y~1 mean?

2019-08-02 16:37发布

我在阅读上的文档r ...式 ,并试图弄清楚如何一起工作depmix(从depmixS4包) 。

现在,depmixS4的文档中,样品配方趋向于类似y ~ 1 。 对于简单的情况下,像y ~ x ,它被限定输入x和输出y之间的关系,所以我得到,这是类似于y = a * x + b ,其中a是斜率,和b是截距。

如果我们回到y ~ 1 ,公式是扔我。 是它等同于y = 1 (一个水平线在y = 1)?

要添加一些背景,如果你看一下depmixs4文档,下面有一个例子

depmix(list(rt~1,corr~1),data=speed,nstates=2,family=list(gaussian(),multinomial()))

我认为在一般情况下,公式与最终~ 1是混淆了我。 可以在任何解释一下~ 1y ~ 1是什么意思? 多谢!

Answer 1:

许多在模型公式(星号,再加上,插入符号)中的R所使用的运算符,具有一个特定于模型的含义,这是其中之一:“一”符号表示截距。

换句话说,它是因变量预期具有当自变量为零或没有影响的值。 (要使用模式方面的比较常见的数学含义,你包起来I() 拦截通常假定所以它是最常见的,看看它在明确说明的模型,而不拦截的上下文。

下面是指定用于在x和y的线性回归模型相同的模型的方法有两种。 所述第一有一个隐式截距项,并且所述第二显式之一:

y ~ x
y ~ 1 + x

下面是如何通过原点,得到对x和y的线性回归(即,不具有截距项):

y ~ 0 + x
y ~ -1 + x
y ~ x - 1

在具体的情况下,你提(Y〜1)中,Y是由没有其他变量预测使其自然预测为y的平均值,作为保Hiemstra表示:

> data(city)
> r <- lm(x~1, data=city)
> r

Call:
lm(formula = x ~ 1, data = city)

Coefficients:
(Intercept)  
       97.3  

> mean(city$x)
[1] 97.3

并配有消除截距-1给你留下什么:

> r <- lm(x ~ -1, data=city)
> r

Call:
lm(formula = x ~ -1, data = city)

No coefficients

formula()是用于提取公式出来的对象和它的帮助文件的功能是不读有关R.指定模型公式,我建议你看一下最好的地方这样的解释或第11章介绍与R 。



Answer 2:

如果你的模型是形式的y ~ x1 + x2这(粗略地讲)表示:

 y = β0 + β1(x1) + β2(x2)

 Which is of course the same as 
 y = β0(1) + β1(x1) + β2(x2)

有一个隐式+1上述式英寸 因此,其实,上述公式是y ~ 1 + x1 + x2

我们可以有一个非常简单的公式,其中y是不依赖于任何其他变量。 这是所引用的式中, y ~ 1这大致将等同于

 y = β0(1) = β0

正如@保罗指出,当你解决简单的模型,你会得到β0 = mean (y)




下面是一个例子

  # Let's make a small sample data frame
  dat <- data.frame(y= (-2):3, x=3:8)

  # Create the linear model as above
  simpleModel <- lm(y ~ 1, data=dat)

  ## COMPARE THE COEFFICIENTS OF THE MODEL TO THE MEAN(y)
  simpleModel$coef
    # (Intercept) 
    #         0.5 

  mean(dat$y)
    # [1] 0.5


Answer 3:

通常这样的公式描述了以线性模型的形式变量和自变量之间的关系。 左手边是因变量,右手边的独立。 独立变量被用来计算线性模型的趋势分量,残差然后假定为具有某种分布。 当独立等于一~ 1 ,趋势部件是一个单一的值,例如,数据的平均值,即,线性模型只有一个截距。



文章来源: What does the R formula y~1 mean?
标签: r formula