1

我有很多销售区域。每个都是一个 data.frame,我可以为每个创建 xts 对象。这需要每个代码行。我宁愿使用一个函数来按需创建。我尝试使用键盘输入来创建一个字符串,然后去掉引号并将输入存储为符号,以便在函数中使用。这不行!

## Function to specify unit
userinput <- scan("", what="")
userinput <- as.name(userinput[1])

## Function to create xts object
createXts=function(x) {
  xts(x[1], order.by=x$StartTime, dateFormat="POSIXct")
}
## Call function
createXts(userinput)
##Result:
>> Error in x[1] : object of type 'symbol' is not subsettable

如何使用用户输入来指定要在函数中使用的 data.frame?注意:如果我用真实单位的名称createXts替换,该功能确实有效。x

4

1 回答 1

1

怎么样:

CreateXts <- function () {
  xx <- scan("", what="")
  xx <- get(xx[[1]])
  xts(xx, order.by=xx$StartTime, dateFormat="POSIXct")
}
于 2013-06-21T10:19:30.027 回答