2013-06-21 87 views
1

我有很多销售区域。每个人都是一个data.frame,我可以为每个人创建xts对象。 这需要每行代码。我宁愿使用一个函数来按需创建。 我试过使用键盘输入来创建一个字符串,然后去掉引号并将输入存储为符号,以便在函数中使用。这不行!从键盘输入创建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?注意:如果我用实际设备名称替换x,则createXts功能可以正常工作。

回答

1

如何:

CreateXts <- function() { 
    xx <- scan("", what="") 
    xx <- get(xx[[1]]) 
    xts(xx, order.by=xx$StartTime, dateFormat="POSIXct") 
} 
+0

是的,完美的。谢谢你。 – felixmc

+0

不客气! :) – asb