系列を月初・月末に整列させる
yearmon のような便利なクラスをタイムスタンプ表現として使えない場合もあります。この演習では、好みのタイムスタンプ表現に手動でマージ済みデータを整列する方法を学びます。
まず、低頻度データを集計データとマージし、na.locf() を使って NA を前方(または fromLast = TRUE を使って後方)に埋めます。次に、目的の表現を持つオブジェクトのインデックスで結果をサブセットします。
作業スペースには、FEDFUNDS、monthly_fedfunds(apply.monthly(DFF, mean) の結果)、および merged_fedfunds(merge(FEDFUNDS, monthly_fedfunds) の結果で、monthly_fedfunds のインデックスは Date)があります。merged_fedfunds に含まれる NA に注意してください。
この演習はコースの一部です
Rで学ぶ金融データのインポートと管理
演習の手順
na.locf()を使ってmerged_fedfundsのNAを埋めます。結果をmerged_fedfunds_locfに代入します。index(monthly_fedfunds)でmerged_fedfunds_locfをサブセットし、月末のタイムスタンプを持つ xts オブジェクトを作成します。結果はaligned_last_dayと名付けます。na.locf()のfromLast引数を使って、NAを「次の」観測値で埋めます。結果をmerged_fedfunds_locbに代入します。index(FEDFUNDS)でmerged_fedfunds_locbをサブセットし、月初(1 日)のタイムスタンプを持つ xts オブジェクトを作成します。結果はaligned_first_dayと名付けます。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Fill NA forward
merged_fedfunds_locf <- ___(___)
# Extract index values containing last day of month
aligned_last_day <- merged_fedfunds_locf[___]
# Fill NA backward
merged_fedfunds_locb <- na.locf(___, fromLast = ___)
# Extract index values containing first day of month
aligned_first_day <- merged_fedfunds_locb[___]