R でデータ フレームを時系列に変換する方法
R でデータ フレームを時系列オブジェクトに変換する最も簡単な方法は、 zooパッケージのread.zoo()関数を使用することです。
tseries <- read. zoo (df)
次の例は、この関数を実際に使用する方法を示しています。
例: R でデータ フレームを時系列に変換する
R に次のデータ フレームがあるとします。
#create data frame df <- data. frame (date = as.Date (' 2022-01-01 ') + 0:9, sales = runif(10, 10, 500) + seq(50, 59)^2) #view data frame df dirty date 1 2022-01-01 2797.159 2 2022-01-02 2782.148 3 2022-01-03 2801.773 4 2022-01-04 3257.546 5 2022-01-05 3415.920 6 2022-01-06 3267.564 7 2022-01-07 3577.496 8 2022-01-08 3627.193 9 2022-01-09 3509.547 10 2022-01-10 3670.815
class()関数を使用して、df が現在データ フレームであることを確認できます。
#display class of df
class(df)
[1] "data.frame"
データ フレームを時系列オブジェクトに変換するには、 zooパッケージのread.zoo()関数を使用できます。
library (zoo) #convert data frame to time series tseries <- read. zoo (df) #view time series tseries 2022-01-01 2022-01-02 2022-01-03 2022-01-04 2022-01-05 2022-01-06 2022-01-07 2797.159 2782.148 2801.773 3257.546 3415.920 3267.564 3577.496 2022-01-08 2022-01-09 2022-01-10 3627.193 3509.547 3670.815
そして、 class()関数を使用して、tseries に「zoo」時系列クラスがあることを確認できます。
#display class of tseries
class(tseries)
[1] “zoo”
as.ts()関数を使用して、「zoo」時系列オブジェクトを「ts」時系列オブジェクトに変換することもできます。
#convert to ts object tseries_ts <- as. ts (tseries) #view time series object tseries_ts Time Series: Start = 18993 End = 19002 Frequency = 1 [1] 2797.159 2782.148 2801.773 3257.546 3415.920 3267.564 3577.496 3627.193 [9] 3509,547 3670,815 #view class class(tseries_ts) [1] “ts”
最終目標によっては、データ フレームを「zoo」時系列オブジェクトまたは「ts」時系列オブジェクトに変換する方が合理的である場合があります。
追加リソース
次のチュートリアルでは、R で他の一般的なタスクを実行する方法について説明します。