2

2つのデータ系列のRの1年間の%変化データを1つのファイルにマージして分析しようとしています。1つのシリーズは毎週、もう1つのシリーズは毎月です。週刊シリーズを月刊に変換することが問題です。週次データで使用apply.monthly()すると、月次ファイルが作成されますが、を介して2つのファイルを結合した後、月次シリーズの月の最初の形式と一致しない月内の日付が含まれますmerge.xts()。質問:結果のマージされたファイル(以下のサンプル)を両方のシリーズの1か月のエントリに変更するにはどうすればよいですか?

2012-11-01 0.02079801          NA
2012-11-24         NA -0.03375796
2012-12-01 0.02052502          NA
2012-12-29         NA  0.04442094
2013-01-01 0.01881466          NA
2013-01-26         NA  0.06370272
2013-02-01 0.01859883          NA
2013-02-23         NA  0.02999318
4

3 に答える 3

4

indexAt="firstof"への呼び出しを渡しto.monthlyて、インデックスに月の初日を使用して月次データを取得できます。

library(quantmod) 
getSymbols(c("USPRIV", "ICSA"), src="FRED")
merge(USPRIV, to.monthly(ICSA, indexAt="firstof", OHLC=FALSE))
于 2013-03-24T05:41:13.747 に答える
0

このようなもの:

do.call(rbind, by(d[-1], d[[1]] - as.POSIXlt(d[[1]])$mday, FUN=apply, 2, sum, na.rm=TRUE))
##                    V2          V3
## 2012-10-31 0.02079801 -0.03375796
## 2012-11-30 0.02052502  0.04442094
## 2012-12-31 0.01881466  0.06370272
## 2013-01-31 0.01859883  0.02999318

日付は、結果の列としてではなく、行名としてエンコードされることに注意してください。

于 2013-03-23T23:28:57.853 に答える