2017-04-10 108 views
3

我在R中很缺乏經驗,但我被告知它是最重要的統計軟件包。我研究它是爲了研究的興趣,但是我對時間序列數據,特別是迴歸,處於僵局。我知道如何做多元迴歸,並且我有點知道如何用SARIMA模型進行預測,但我不確定如何進行時間序列多元迴歸。R中的時間序列迴歸:從頭開始幫助

以下是我的第一個數據示例。我總是從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 

Homicide或HomRate是因變量,其他是獨立的。爲此,假設數據沒有變化。

從我有限的理解,而不是使用lm,就像在多元線性迴歸中一樣,我使用forecast包中的tslm。然而,據R表示,我的數據不會被讀作時間序列數據。我怎麼能做到這一點?沒有我找到的例子實際上向我展示了底層數據,所以我不知道什麼是適合的ts兼容數據。

如果我得到tslm指令,那麼邏輯的其餘部分是否會像多重回歸? (即model=tslm(HomRate~Unemp+Av_Schl+...))或者在編碼方面有很大不同?

非常感謝,請讓我知道是否需要更多細節。

+2

您可以查看開源文本[預測:原理和實踐](https://www.otexts .org/fpp),也是「預測」軟件包的作者Rob Hyndman。雖然不是開源的,但還有[帶有R的入門時間序列](https://www.amazon.com/Introductory-Time-R-Use/dp/0387886974/ref=sr_1_1?ie=UTF8&qid=1491789821&sr=8-1&keywords = cowpertwait +時間+系列)。 – eipi10

+0

謝謝,這非常有幫助!我發現4.8有幫助,但是當我去下載他使用的包裹「fpp」中的數據(稱爲美國消費)時,我無法辨別使他的數據與我的數據有什麼不同。每當我使用上面的數據集時,我都會得到'不是時間序列數據,使用lm()',我不認爲Hyndman的數據有什麼不同,不會導致錯誤。 –

+1

您的數據可能是「時間序列」數據,但您嘗試使用的功能可能也需要您將數據幀轉換爲時間序列* class *。例如,如果運行'class(usconsumption)',你會看到這個數據集有類'mts'和'ts'。如果你運行'str(usconsumption)',你會發現它是'Time Series'。如果您在使用'read.csv'閱讀您的CSV文件,那麼你的數據幀可能是'數據frame'類的。您需要將其轉換爲您想要使用的建模功能的適當時間序列類。 – eipi10

回答

0

我目前也學習R,我的主要焦點是時間序列分析,我遇到了很多與日期和ggplot2的包衝突。

截至2017年11月,看起來風險最低的方法在Matthew Small的R Times Series Tutorial中描述。

的基本步驟是:

  1. 匯入數據
  2. 負載它變成一個xts對象查看和過濾它
  3. 轉換的xts對象轉換成標準的R ts對象
  4. ts對象更適合Rob Hyndman的R包並用於ggplot2中

如果有更好的方法,請提供反饋意見,對於新到R的人來說風險更低。