如何将列表中的多个数据帧转换为 xts 对象
How to convert mutiple dataframes in a list to xts object
我有一个列表,其中包含 1000 个数据框,每个数据框的第一列为日期。我想将所有这些数据帧转换为 xts 对象。
我已经使用 lapply 将日期转换为日期对象。
我想在一个命令中将每个数据帧转换为 xts,而不是一个一个地转换,因为这会花费很多时间。
一个选项是遍历 list
,删除第一列 'Date',应用 xts
并将 order.by
指定为第一列(假设'Date'列的class为Date
)
library(xts)
lst2 <- lapply(lst1, function(x) xts(x[-1], order.by = x[,1]))
数据
set.seed(24)
lst1 <- list(data.frame(Date = seq(as.Date('2015-01-01'),
length.out = 10, by = '1 day'), Col2 = rnorm(10)),
data.frame(Date = seq(as.Date('2017-01-01'),
length.out = 10, by = '1 day'), Col2 = rnorm(10)))
我有一个列表,其中包含 1000 个数据框,每个数据框的第一列为日期。我想将所有这些数据帧转换为 xts 对象。
我已经使用 lapply 将日期转换为日期对象。
我想在一个命令中将每个数据帧转换为 xts,而不是一个一个地转换,因为这会花费很多时间。
一个选项是遍历 list
,删除第一列 'Date',应用 xts
并将 order.by
指定为第一列(假设'Date'列的class为Date
)
library(xts)
lst2 <- lapply(lst1, function(x) xts(x[-1], order.by = x[,1]))
数据
set.seed(24)
lst1 <- list(data.frame(Date = seq(as.Date('2015-01-01'),
length.out = 10, by = '1 day'), Col2 = rnorm(10)),
data.frame(Date = seq(as.Date('2017-01-01'),
length.out = 10, by = '1 day'), Col2 = rnorm(10)))