Сохранение нескольких переменных в одном файле RDS - PullRequest
0 голосов
/ 07 сентября 2018

Я хочу передать список переменных в saveRDS (), чтобы сохранить их значения, но вместо этого он сохраняет их имена:

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

сохраняет один вектор "переменных".

Я тоже пробовал:

save(variables, "file.RData")

безуспешно

1 Ответ

0 голосов
/ 07 сентября 2018

Вам необходимо использовать аргумент list функции save.Например:

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
...