让我们说,在其他变量中,例如还有x_1
,x_2
,...,x_n
变量。 R中的y
,z
,w
。
我想用模式x_
保存它们,我可以按var_list = ls(pattern="x_")
列出它们。
但是现在,我如何使用它们自己的名称,使用for循环之类的东西来保存它们?
我想在包含x_i.rds
的磁盘上有一个名为x_i
的文件。
使用for循环并说saveRDS(filename=as.character(x_1), data=x_1)
不起作用。
因此,也许像saveRDS(file_name=var_list[1], what_here_?)
答案 0 :(得分:1)
get
函数允许从其名称获取R对象。
因此,一旦在var_list
中有了对象名称,就可以通过执行以下操作来保存第一个对象:
saveRDS(get(var_list[1]), file=var_list[1])
要保存所有对象,可以在var_list
上循环:
for(objectName in var_list){
saveRDS(get(objectName), file = objectName)
}