我有一个 R 中的 XTS 时间序列,格式如下,我想在导出为 CSV 并在另一个程序中使用之前进行一些处理、子集和重新排列。
head(master_1)
S_1
2010-03-03 00:00:00 2.8520
2010-03-03 00:30:00 2.6945
2010-03-03 01:00:00 2.5685
2010-03-03 01:30:00 2.3800
2010-03-03 02:00:00 2.2225
2010-03-03 02:30:00 2.0650
and
:并且str(master_1)
An ‘xts’ object from 2010-03-03 to 2010-05-25 08:30:00 containing:
Data: num [1:4000, 1] 2.85 2.69 2.57 2.38 2.22 ...
- attr(*, "dimnames")=List of 2
..$ : NULL
..$ : chr "S_1"
Indexed by objects of class: [POSIXt,POSIXct] TZ:
Original class: 'zoo'
xts Attributes:
List of 1
$ dateFormat: chr "Date"
我希望将其转换为数据框以便更轻松地操作,并将其导出到另一个程序。但是,当我使用test1 <- as.data.frame(master_1)
时,test1上确实显示了索引(即日期和时间)。
head(test1)
S_1
2010-03-03 00:00:00 2.8520
2010-03-03 00:30:00 2.6945
2010-03-03 01:00:00 2.5685
2010-03-03 01:30:00 2.3800
2010-03-03 02:00:00 2.2225
2010-03-03 02:30:00 2.0650
但是索引没有显示,
str(test1)
'data.frame': 4000 obs. of 1 variable:
$ S_1: num 2.85 2.69 2.57 2.38 2.22 ...
使用 write.csv(master_1, file="master_1.csv")
写入 csv 文件时,不包含时间或日期。为什么会这样,我该如何将日期/时间数据作为一列包括在内,以便在其他 R 命令中使用并正确导出?
感谢任何帮助。
write.csv
不包括索引,因为索引是 xts 的一个 属性,而不是行名。请使用write.zoo
代替。 - Joshua Ulrichdata.frame(date=index(master_1), value=coredata(master_1)[,])
可以一次性重命名变量。 - PatrickTlibrary('magrittr'); master_1 %>% data.frame %>% data.frame(Date = rownames(.), .)
有时候有效,有时候无效。 - Rγσ ξηg Lιαη Ημ 雷欧