我想尽可能有效地将CSV文件转换为XTS对象。我似乎不得不首先应用read.zoo方法来创建动物园对象,然后才能将其转换为XTS对象。

gold <- read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE)

Gold <- as.xts (gold, order.by=index(gold), frequency=NULL)

这是将我的初始黄金文件转换为r XTS对象的最有效方法吗?

有帮助吗?

解决方案

如果是文件,则需要阅读。

所以使用 read.zoo() 作为您 - 但随后转换:

 gold <- as.xts(read.zoo("GOLD.CSV", sep=",", format="%m/%d/%Y", header=TRUE))

好的?

其他提示

你可以写自己的 read.xts 功能。我们将其称为包装器功能,应该按照

read.xts <- function(x, format = "%m/%d/%Y", header = TRUE, sep = ",") {
  result <- as.xts(read.zoo(x, sep = sep, format = format, header = header))
  return(result)
}

read.xts(file.choose())  # select your file

注意中的论点 function(). 。它们被传递给功能主体(卷曲支架之间的代码)。如果 function() 参数具有价值,这意味着这是他们的默认值。如果分配新值(例如 function(x = "my.file.csv", sep = "\t")),他们将覆盖默认值。最后一行向您展示了如何使用新功能。随意使用其余部分扩展此功能 read.zoo 参数。您是否应该有任何有关如何做的问题,不要害羞,只是问。 :)

我在日常工作中使用了一些类似的小宝石。我已经创建了一个名为workhorse.r的文件,然后加载它(例如 source("d:/workspace/workhorse.R"))每当我需要任何小功能时。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top