2015-08-16 320 views
-2

我試圖在每月住房數據上使用季度價格平減指數。你能幫我把季度數據轉換成月度數據嗎?我研究了在Stata中使用Cubic Spline Interpolation方法,但沒有運氣讓do文件起作用。我可以訪問excel和R,所以這些都是我嘗試的選擇。感謝您的時間。將季度時間序列數據轉換爲月度數據

Quarterly  CPI Deflator Data  
1999-04-01 79.891 
1999-07-01 80.180 
1999-10-01 80.547 
2000-01-01 81.163 
2000-04-01 81.623 
2000-07-01 82.152 
2000-10-01 82.593 
2001-01-01 83.112 
2001-04-01 83.699 
2001-07-01 83.973 
2001-10-01 84.227 
2002-01-01 84.497 
2002-04-01 84.812 
2002-07-01 85.190 
2002-10-01 85.651 
2003-01-01 86.179 
2003-04-01 86.455 
2003-07-01 86.934 
2003-10-01 87.346 
2004-01-01 88.108 
2004-04-01 88.875 
2004-07-01 89.422 
2004-10-01 90.049 
2005-01-01 90.883 
2005-04-01 91.543 
2005-07-01 92.399 
2005-10-01 93.100 
2006-01-01 93.832 
2006-04-01 94.587 
2006-07-01 95.247 
2006-10-01 95.580 
2007-01-01 96.654 
2007-04-01 97.194 
2007-07-01 97.531 
2007-10-01 97.956 
2008-01-01 98.516 
2008-04-01 98.995 
2008-07-01 99.673 
2008-10-01 99.815 
2009-01-01 100.062 
2009-04-01 99.895 
2009-07-01 99.873 
2009-10-01 100.169 
2010-01-01 100.522 
2010-04-01 100.968 
2010-07-01 101.429 
2010-10-01 101.949 
2011-01-01 102.399 
2011-04-01 103.145 
2011-07-01 103.768 
2011-10-01 103.917 
2012-01-01 104.466 
2012-04-01 104.943 
2012-07-01 105.508 
2012-10-01 105.935 
2013-01-01 106.363 
2013-04-01 106.623 
2013-07-01 107.128 
2013-10-01 107.589 
2014-01-01 108.009 
2014-04-01 108.606 
2014-07-01 109.044 
2014-10-01 109.067 
2015-01-01 109.099 
2015-04-01 109.650 


    Monthly Data Monthly datapoint 
1999-01-01 76.841 
1999-02-01 79.863 
1999-03-01 81.245 
1999-04-01 78.911 
+0

你有任何的數據分享?看起來像一個有趣的問題,但會從一些數據中受益,以幫助可視化問題。 – SJSU2013

+0

歡迎來到SO。僅僅描述問題很難幫助你。用戶很樂意幫助你,但你必須讓他們通過提供一段你的數據(通常用'dput')和/或所需的輸出和/或迄今爲止你嘗試過的東西來幫助你。 – SabDeM

+0

爲您的評論添加季度數據。謝謝。 –

回答

2

使用在端部示出Lines,讀取從Lines輸入到一個動物園對象,zd,(或使用read.zoo("myfile.dat", header = TRUE)從文件讀它)。然後計算"yearmon"班月的序列,tt,用於插值並使用na.spline進行插值。 (另一種方法是到位的na.spline使用na.approx如果線性插值是需要的。)

library(zoo) 
zd <- read.zoo(text = Lines, header = TRUE) 
tt <- as.yearmon(seq(start(zd), end(zd), "month")) 
zm <- na.spline(zd, as.yearmon, xout = tt) 

我們用這個輸入:

Lines <- "Quarterly  CPI 
1999-04-01 79.891 
1999-07-01 80.180 
1999-10-01 80.547 
2000-01-01 81.163 
2000-04-01 81.623 
2000-07-01 82.152 
2000-10-01 82.593 
2001-01-01 83.112 
2001-04-01 83.699 
2001-07-01 83.973 
2001-10-01 84.227 
2002-01-01 84.497 
2002-04-01 84.812 
2002-07-01 85.190 
2002-10-01 85.651 
2003-01-01 86.179 
2003-04-01 86.455 
2003-07-01 86.934 
2003-10-01 87.346 
2004-01-01 88.108 
2004-04-01 88.875 
2004-07-01 89.422 
2004-10-01 90.049 
2005-01-01 90.883 
2005-04-01 91.543 
2005-07-01 92.399 
2005-10-01 93.100 
2006-01-01 93.832 
2006-04-01 94.587 
2006-07-01 95.247 
2006-10-01 95.580 
2007-01-01 96.654 
2007-04-01 97.194 
2007-07-01 97.531 
2007-10-01 97.956 
2008-01-01 98.516 
2008-04-01 98.995 
2008-07-01 99.673 
2008-10-01 99.815 
2009-01-01 100.062 
2009-04-01 99.895 
2009-07-01 99.873 
2009-10-01 100.169 
2010-01-01 100.522 
2010-04-01 100.968 
2010-07-01 101.429 
2010-10-01 101.949 
2011-01-01 102.399 
2011-04-01 103.145 
2011-07-01 103.768 
2011-10-01 103.917 
2012-01-01 104.466 
2012-04-01 104.943 
2012-07-01 105.508 
2012-10-01 105.935 
2013-01-01 106.363 
2013-04-01 106.623 
2013-07-01 107.128 
2013-10-01 107.589 
2014-01-01 108.009 
2014-04-01 108.606 
2014-07-01 109.044 
2014-10-01 109.067 
2015-01-01 109.099 
2015-04-01 109.650" 
+0

夢幻般的答案。請注意歷史數據在大多數情況下應該線性插值。預測的數據,你可以spline或任何你喜歡的曲線構造方法 – OfficialBenWhite

相關問題