R中的时间序列回归:从头开始的帮助

R中的时间序列回归:从头开始的帮助,r,time,time-series,regression,linear-regression,R,Time,Time Series,Regression,Linear Regression,我在R方面非常缺乏经验,但有人告诉我这是最重要的统计数据包。我研究它是为了做研究,但我在时间序列数据方面陷入僵局,特别是回归。我知道如何进行多元回归,我也知道如何使用SARIMA模型进行预测,但我不确定如何进行时间序列多元回归 这是我的第一个数据样本。我总是从CSV导入 HomRate Unemp Av_Schl GNI_perCapita 2000 5.5 4.099 12.7 36930 2001 6.6 4

我在R方面非常缺乏经验,但有人告诉我这是最重要的统计数据包。我研究它是为了做研究,但我在时间序列数据方面陷入僵局,特别是回归。我知道如何进行多元回归,我也知道如何使用SARIMA模型进行预测,但我不确定如何进行时间序列多元回归

这是我的第一个数据样本。我总是从CSV导入

     HomRate   Unemp    Av_Schl     GNI_perCapita   
2000    5.5    4.099    12.7        36930   
2001    6.6    4.800    N/A         37860   
2002    5.6    5.900    N/A         38590   
2003    5.6    6.099    N/A         39960   
2004    5.5    5.599    12.87391    42260   
2005    5.6    5.199    12.8        44740   
2006    5.8    4.699    12.96034    47390
2007    5.6    4.699    N/A         48420
2008    5.4    5.900    13.20913    48640
2009    5.0    9.399    13.29049    47250
凶杀案或HomRate是因变量,其他变量是独立变量。因此,假设数据上没有转换

根据我有限的理解,我没有像多元线性回归那样使用
lm
,而是使用
forecast
包中的
tslm
。然而,根据R,我的数据不是作为时间序列数据读取的;我怎样才能做到这一点?我发现没有一个示例实际向我显示底层数据,所以我不知道正确的ts兼容数据是什么样子的

如果我将
tslm
命令启动,那么剩下的逻辑会像多元回归一样吗?(即
model=tslm(HomRate~Unemp+Av_Schl+…)
)或者在编码方面有很大不同


非常感谢,如果需要更多详细信息,请告诉我。

我目前也在学习R,主要关注时间序列分析,我遇到了很多与日期和ggplot2的包冲突

截至2017年11月,Matthew Small的报告中描述了最低风险方法

基本步骤是:

  • 导入数据
  • 将其加载到
    xts
    对象中以查看和筛选它
  • xts
    对象转换为标准的R
    ts
    对象
  • ts
    对象更适合Rob Hyndman的R软件包和ggplot2中使用

  • 如果有更好、风险更低的方法适合R新手,请给出反馈。

    您可以看看Rob Hyndman的开源文本,他也是
    预测
    软件包的作者。虽然不是开源的,但也有。谢谢,这很有帮助!我发现4.8很有用,但当我去下载他从他的软件包
    fpp
    中使用的数据时,我无法辨别是什么使他的ts数据与我的数据不同。每当我使用上面的数据集时,我都会得到
    而不是时间序列数据,使用lm()
    ,我看不出Hyndman的数据有什么不同之处,从而不会产生错误。您的数据可能是“时间序列”数据,但您尝试使用的函数可能还需要您将数据帧转换为时间序列类。例如,如果您运行
    class(usconsumption)
    ,您将看到此数据集具有类
    mts
    ts
    。如果运行
    str(usconsumption)
    ,您将看到它是一个
    时间序列。如果您使用
    read.csv
    读取csv文件,则您的数据帧可能属于
    数据帧
    类。您需要将其转换为要使用的建模函数的适当时间序列类。我不确定将数据转换为正确格式的适当函数是什么,但我敢打赌Hyndman的文本前面已经讨论过。您可能需要使用
    ts
    功能,或者
    xts
    (来自
    xts
    软件包)或
    zoo
    (来自
    zoo
    软件包)。再次感谢@eipi10!还有更多的问题。我将
    xts
    包与此代码一起使用<代码>xts(美国数据测试$HomRate,as.Date(美国数据测试$Year,格式=“%Y”)
    。这里有两个问题。1.我如何处理多个非时间变量?我尝试用+分隔它们,但得到了二进制运算符的
    非数字参数。逗号得到了我的
    顺序。by需要一个适当的基于时间的对象
    。2.我只用一个变量和时间完成了这项工作,但输出给了我日期
    >1975-09-30
    ,到
    1975-10-12
    ,与我想要的相去甚远。我怀疑说格式是
    “%Y”
    是问题所在?