0

我有一个 CSV 文件,其中包含 Unix 时间戳中第一列的数据。如何直接将其转换为 xts 形式?目前我正在尝试读取文件并使用 进行转换as.xts,但每次尝试都会收到错误消息。

我使用的代码示例:

Data <- read.zoo("data.csv", index.column = 1, origin="01/01/1970",
                 sep = ",", header = TRUE, FUN = as.POSIXct)
as.xts(Data)

csv 的第一 2 行:

1366930371  143.7   0.25275
1366930368  143.7   0.02664867
4

1 回答 1

0

可能有几件事是错误的。首先是“csv”的前两行是制表符分隔的,而不是逗号分隔的。接下来,您指定header=TRUE,但前 2 行没有标题。三origin=是格式不对。应该是yyyy-mm-dd

这有效:

library(xts)
Lines <- "1366978862,133.08,0.48180896
1366978862,133.08,0.5"
tc <- textConnection(Lines)
Data <- read.zoo(tc, sep=",", FUN=function(i) as.POSIXct(i, origin="1970-01-01"))
close(tc)
Data <- as.xts(Data)
于 2013-04-26T21:22:11.717 回答