R中的一些基本问题是为回归示例编写R脚本

时间:2012-04-24 16:21:34

标签: r

首先,我想指出我对R不是很熟悉,如果有以下问题之一,请对不起。

我的动机是编写一个简单的R脚本,其中应包含:

  1. 导入数据
  2. 做回形式$ Y = aX + bZ +拦截$
  3. 一些计算
  4. 输出中
  5. 现在我的问题是:

    1. 这是一个非常普遍的问题:如果我写了R脚本,那么我必须用source(name.R)加载它,对吧?必须有一个额外的命令来执行脚本吗?
    2. 假设我使用lm进行了回归,就像fit<-lm(Y~X+Z,data=database)一样,这给出了一个很好的输出。我真正想要的是将模型的系数保存在矢量中。我怎样才能做到这一点?这将是一个三维向量(intercept, a, b)编辑我试过coefficient<-coefficient(fit)。这不起作用! coefficient不是数字向量。还有名称,即截距和下面第一个元素的值。
    3. 如果我想在脚本的最后打印出系数和一些计算,我该怎么做?只需写下print(....)
    4. 我非常感谢你的帮助,希望我能在这个论坛中考虑所有规则和惯例,因为这是我的第一个问题。如果没有,我很抱歉。

1 个答案:

答案 0 :(得分:2)

  

如果我写了R脚本,那么我必须用source(name.R)加载它,对吧?必须有一个额外的命令来执行脚本吗?

如果您的脚本直接调用命令

,则不会

例如,如果name.R包含

a <- 1:10
plot(a, a^2, t="l")

然后source(“name.R”)将直接生成一个情节

但是,如果name.R包含

myfunction <- function()
   {
   a <- 1:10
   plot(a, a^2, t="l")
   }

然后获取它只会加载该功能。然后,您必须调用myfunction()来获取情节。

  

假设我使用lm进行了回归,例如fit&lt; -lm(Y~X + Z,data = database),这给出了一个很好的输出。我真正想要的是将模型的系数保存在矢量中。我怎样才能做到这一点?这将是一个三维向量(截距,a,b)
  如果我想在脚本的最后打印出系数和一些计算,我该怎么做?只写print(....)?

 print(coef(fit))

将为您提供所需内容(您可以将它们存储在包含model.coef <- coef(fit)

的数组中

此外,运行

会很有趣
 summary(fit)

有关详细信息,请参阅?coef?summary