R中lm(y~。)中点的含义

时间:2017-08-12 23:07:11

标签: r

我试图在其他人编写的代码中理解R中此语句的含义。

mymodel = lm(gene ~ ., data = mydata) 

mydata如下:

> mydata
                 gene    cna rs11433683      PC1    PC2
TCGA.BH.A0C0 270.7446 0.1291          0 270.7446 0.1291
TCGA.A2.A3XY  87.9092 0.0128          1  87.9092 0.0128
TCGA.XX.A89A 255.1346 0.1530          1 255.1346 0.1530

我已经浏览了R帮助部分,了解如何解释.。我知道.通常不会被使用,但这就是我找到的

help(formula)
  

公式中有.的两种特殊解释。通常   一个是在模型拟合函数的data参数的上下文中   并且意味着“公式中没有其他列的所有列”:见   terms.formula。在update.formula的上下文中,这意味着   '之前在公式的这一部分'

help(terms.formula)
  

AllowDotAsName:公式中的.通常是指剩余的   data中包含的变量。例外情况下,.可以视为一个   公式的非标准用途的名称。

     

data:一个数据框,可以从中推断出特殊符号.的含义。如果公式中没有.,则不使用。

但是,我不确定这些陈述的含义。有人能给我一个简单的例子,说明它在我上面提到的陈述和数据的背景下意味着什么?

2 个答案:

答案 0 :(得分:2)

  

在模型拟合函数的数据参数的上下文中,并且表示“公式中没有其他列的所有列”

正如它在盒子上所说的那样!

所以用

 mymodel = lm(gene ~ ., data = mydata) 

您在公式的RHS中gene获得 mydata以外的所有变量

   cna + rs11433683 + PC1 + PC2

据我所知,引用的短语清晰明确(......但你也可以通过尝试一些小例子看到它)

唯一可能不明显的是,如果你没有提供data论证,它会做什么(但是在terms.formula的帮助中回答了这个问题在你的报价中。)

答案 1 :(得分:-1)

意味着您要将基因与所有变量进行比较