フライトデータのエンコード
データを xts オブジェクトにエンコードする準備ができました。flights はフライトデータ4列と日付1列を含むデータフレームです。
xts オブジェクトに変換するには、日付列が時系列の形式である必要があります。先ほど確認したように、date 列はいまは character です。date を時系列の形式に保存できたら、xts への変換に進めます。このときは、2つの主な引数を取る as.xts() を使います。
まず、変換するオブジェクト(この場合は flights)を指定します。重複を避けるため、xts に変換するときは一般に時系列の列をデータから取り除きます。この場合は5列目(dates)を削除するので、as.xts() の呼び出しで [, -5] を指定します。
次に、order.by 引数を指定して、オブジェクトのインデックス方法を xts に伝えます。ここでは、date 列でオブジェクトにインデックスを付けます。
flights データフレームはあらかじめ読み込まれています。
この演習はコースの一部です
ケーススタディ:Rで都市の時系列データを分析する
演習の手順
xtsパッケージを読み込みます。- as.Date() を使って、
flightsのdate列をcharacterからDateオブジェクトに変換します。 as.xts()を使ってデータをxtsオブジェクトに変換します。このとき、まずエンコードするデータを指定し、続けて時系列インデックスを生成するorder.by引数を指定します。このオブジェクトをflights_xtsとして保存します。- ワークスペース内の
flights_xtsのクラスを確認します。 flights_xtsの先頭5行を確認します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Load the xts package
# Convert date column to a time-based class
flights$date <- ___(flights$date)
# Convert flights to an xts object using as.xts
flights_xts <- as.xts(___ [ , -___], order.by = ___)
# Check the class of flights_xts
# Examine the first five lines of flights_xts