我有一个必须将数据集传递给的函数。
loading <- function(dataset){
merchants <- load(dataset)
return(merchants)
}
Run Code Online (Sandbox Code Playgroud)
但是当我使用加载函数时它返回一个字符向量
loading("capital.Rdata")
"capital"
Run Code Online (Sandbox Code Playgroud)
如何在函数内加载数据?
该load()命令不返回存储在 RData 文件中的对象。相反,它返回一个字符向量,其中列出了从 Rdata 文件加载的所有对象的名称。您的对象显然被称为capital,所以您也许可以这样做:
loading <- function(dataset){
merchants <- load(dataset)
return(get(merchants))
}
Run Code Online (Sandbox Code Playgroud)
您向get()函数传递一个字符串,它返回该名称的对象。
请注意,如果 RData 文件中保存了多个对象,则此方法将不起作用。检查是否存在多个对象,并可能返回所有对象,留给读者作为练习。