我有很多销售区域。每一个都是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
函数会起作用。
答案 0 :(得分:1)
怎么样:
CreateXts <- function () {
xx <- scan("", what="")
xx <- get(xx[[1]])
xts(xx, order.by=xx$StartTime, dateFormat="POSIXct")
}