【问题标题】:How to convert monthly time-series in R如何在 R 中转换每月时间序列
【发布时间】:2018-12-11 21:42:52
【问题描述】:

我正在研究基于月度的时间序列数据集:

> head(data, n=10)
# A tibble: 10 x 2
   Month               Inflation
   <dttm>                  <dbl>
 1 1979-01-01 00:00:00    0.0258
 2 1979-02-01 00:00:00    0.0234
 3 1979-03-01 00:00:00    0.0055
 4 1979-04-01 00:00:00    0.0302
 5 1979-05-01 00:00:00    0.0305
 6 1979-06-01 00:00:00    0.0232
 7 1979-07-01 00:00:00    0.025 
 8 1979-08-01 00:00:00    0.0234
 9 1979-09-01 00:00:00    0.0074
10 1979-10-01 00:00:00    0.0089

虽然数据似乎尚未被识别为时间序列数据,因为它显示以下结构:

> str(data)
Classes ‘tbl_df’, ‘tbl’ and 'data.frame':   479 obs. of  2 variables:
 $ Month    : POSIXct, format: "1979-01-01" "1979-02-01" "1979-03-01" "1979-04-01" ...
 $ Inflation: num  0.0258 0.0234 0.0055 0.0302 0.0305 0.0232 0.025 0.0234 0.0074 0.0089 ...

当我尝试使用 xts 函数转换它时,它给了我这个错误:

> inflation <- xts(data[,-1], order.by=as.Date(data[,1], "%m/%d/%Y"))
Error in as.Date.default(data[, 1], "%m/%d/%Y") : 
  do not know how to convert 'data[, 1]' to class “Date”

请帮助我以最合适的方式进行数据转换。 谢谢

【问题讨论】:

    标签: r dataframe time-series


    【解决方案1】:
    # You have something like:
    data <- data.frame(
      Month = as.Date(as.Date("1979-01-01"):as.Date("2000-01-01"), origin="1970-01-01"),
      Inflation = rnorm(7671)) # same number of obs
    

    创建 TS

    选择“开始和结束日期”适当的日期

    tseries <- ts(data$Inflation, start = c(1979,1), end = c(2000,1), frequency = 12)
    plot(tseries)
    

    【讨论】:

    • 您介意解释一下“rnorm(7671)”位吗?我假设它是观察/行的数量。然而,当我将观察次数设为 479 时,它给了我错误:data.frame 中的错误(Month = as.Date(as.Date("1979-01-01"):as.Date("2018-11- 01"), : 参数暗示不同的行数:14550, 479
    • 观察次数。您根本不需要创建数据框。那只是为了展示你的数据情况。只需使用通货膨胀变量并指定开始和结束日期以及频率。在示例中,我创建了从 1979 年 1 月到 2000 年 1 月的月度数据。
    • 好的,一旦我立即运行 ts() 函数,它就可以完美运行。正如你所说,我应该跳过数据框的创建。非常感谢:)
    • @Muhammad Akbar Almuttaqin,请接受这个答案(点击旁边的勾号),如果你发现这解决了你的问题......那么其他人更容易找到它是否已经解决。
    猜你喜欢
    • 2021-02-13
    • 2018-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-07
    • 2013-04-21
    • 2021-07-15
    相关资源
    最近更新 更多