R中的变量列表并保存它们

Posted

技术标签:

【中文标题】R中的变量列表并保存它们【英文标题】:list of variables in R and save them 【发布时间】:2019-02-06 07:06:00 【问题描述】:

假设有名为x_1x_2、...、x_n 的变量以及其他变量,例如y, z, w 在R中。

我想保存模式为x_的,我可以通过var_list = ls(pattern="x_")列出它们。

但是现在,我怎样才能保存它们,使用它们自己的名字,使用 for 循环或类似的东西? 我想在包含x_i 的磁盘上有一个名为x_i.rds 的文件。

使用 for 循环并说 saveRDS(filename=as.character(x_1), data=x_1) 不起作用。 所以,也许像saveRDS(file_name=var_list[1], what_here_?)

【问题讨论】:

也许是saveRDS(file_name=var_list[1], get(var_list[1])) 太棒了,我正准备将我的问题改为一个真实的问题,其中变量是真正的情节,对于变量,eval(parse()) 可能会起作用! 好的,然后我将我的评论转换为答案,因为这有效。 【参考方案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)

【讨论】:

以上是关于R中的变量列表并保存它们的主要内容,如果未能解决你的问题,请参考以下文章

如何将 lapply 的输出保存(分配)到 R 中的单个变量中?

R语言中的变量冲突

按 R 中 csv 中的值选择行并将它们保存在新的 csv 文件中

如何遍历列表中的每个元素并更新它们? [复制]

如何使用R中的循环创建变量A1,A2,...,A100?

尝试在 UserDefaults 中保存数据并在列表视图中显示它们