在单个 RDS 文件中保存多个变量

Saving several variables in a single RDS file

我想将变量列表传递给 saveRDS() 以保存它们的值,但它保存了它们的名称:

variables <- c("A", "B", "C")
saveRDS(variables, "file.R")

它保存了单个向量"variables"。

我也试过:

save(variables, "file.RData")

没有成功

您需要使用 save 函数的 list 参数。例如:

var1 = "foo"
var2 = 2
var3 = list(a="abc", z="xyz")
ls()
save(list=c("var1", "var2", "var3"), file="myvariables.RData")
rm(list=ls())
ls()

load("myvariables.RData")
ls()

请注意,saveRDS 函数会创建一个 .RDS 文件,用于保存单个 R 对象。 save 函数创建一个 .RData 文件(与 .RDA 文件相同)。 .RData 文件用于存储整个 R 工作区,或者 R 工作区中传递给 list 参数的任何名称。

YiHui 在这个话题上有很好的 blogpost

如果你有多个数据表并且需要将它们全部保存在一个 R 对象中,那么你可以走 saveRDS 路线。例如:

datalist = list(mtcars = mtcars, pressure=pressure)
saveRDS(datalist, "twodatasets.RDS")
rm(list=ls())

datalist = readRDS("twodatasets.RDS")
datalist