繁体   English   中英

data.frame对象到R中的xts对象转换

[英]data.frame object to xts object conversion in R

我想尽可能有效地将我的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)

这是将我的初始GOLD.CSV文件转换为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参数的其余部分扩展此函数。 如果你有任何关于如何做的具体问题,不要害羞,只要问。 :)

我在日常工作中使用了一些像这样的小宝石。 我创建了一个名为source("d:/workspace/workhorse.R")每当我需要任何小函数时,我都会加载它(例如source("d:/workspace/workhorse.R") )。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM