使用R将数据转换为时间序列数据

时间:2017-03-22 21:52:38

标签: r excel csv

我有一个带有两列的csv文件 - 其中一个是每月的日期&另一笔美元出售。该表是:

桌头:

month   US dollar
31-12-1978  207.8
31-01-1979  227.3
28-02-1979  245.7
30-03-1979  242.1
30-04-1979  239.2
31-05-1979  257.6

表格底部:

31-12-2013  1,225.40
31-01-2014  1,244.80
28-02-2014  1,301.00
31-03-2014  1,336.10
30-04-2014  1,299.00
30-05-2014  1,287.50

我能够正确导入数据。但我无法将其转换为时间序列数据。我使用的代码:

data <- ts(data[,2],start = c(1978,12,31), end = c(2014,5,30), frequency = 12)

提前致谢。

1 个答案:

答案 0 :(得分:0)

这个怎么样?

数据

df <- read.table(text =c("
month         USdollar
31/12/1978  207.8
31/01/1979  227.3
28/02/1979  245.7
30/03/1979  242.1
30/04/1979  239.2
31/05/1979  257.6
31/12/2013  1,225.40
31/01/2014  1,244.80
28/02/2014  1,301.00
31/03/2014  1,336.10
30/04/2014  1,299.00
30/05/2014  1,287.50"),header = T)

转换为时间序列

df1 <- xts(df$USdollar, as.Date(df$month, format = "%d/%m/%Y"))

OR

library(zoo)
df2 <- ts(zoo(df$USdollar, order.by=as.Date(as.character(df$month), format="%d/%m/%Y")))