我有一个数据框和一个包含该数据框名称的文本变量:
adsl = data.frame(a=2, b=7, w=17)
ds_name = "adsl"
我想将数据框从工作区保存到名为" dest_file"的文件中。代码应该包含在函数get_r()中 将数据框名称作为参数:
get_r(ds_name="adsl")
所以我需要避免使用显式名称" adsl"在代码里面。
以下工作几乎正确,但结果数据框称为" temp_dataset",而不是" adsl":
get_r = function(ds_name){
temp_dataset = eval(parse(text=ds_name))
save(temp_dataset, file = "dest_file")
}
这是另一个错误的选项(正在保存文本字符串,而不是数据框):
get_r = function(ds_name){
save(ds_name, file = "dest_file")
}
我应该怎么做才能让R执行
save(adsl, file="dest_file")
里面的功能?谢谢你的帮助。
答案 0 :(得分:1)
尝试
save(list = ds_name, file = "dest_file")
list
中的save()
参数允许您将数据名称作为字符串传递。有关详情,请参阅help(save)
。