Для чего бы то ни было, вышеприведенное не сработало для меня, поэтому я опубликую, как я адаптировал этот ответ:
У меня есть файлы в folder_with_files/
с префиксом prefix_pattern_
Все они имеют тип .RData
и называются так, как я хочу, чтобы они назывались в моей среде R: например: если бы я сохранил var_x = 5
, я бы сохранил его как prefix_pattern_var_x.Data
в folder_with_files
.
Я получаю список имен файлов, затем генерирую их полный путь к load
им, затем gsub
из частей, которые мне не нужны: взяв его (для object1
в качестве примера) от folder_with_files/prefix_pattern_object1.RData
до object1
как objname
, к которому я буду assign
объект, сохраненный в файле RData
.
file_names=as.list(dir(path = 'folder_with_files/', pattern="prefix_pattern_*"))
file_names = lapply(file_names, function(x) paste0('folder_with_files/', x))
out = lapply(file_names,function(x){
env = new.env()
nm = load(x, envir = env)[1]
objname = gsub(pattern = 'folder_with_files/', replacement = '', x = x, fixed = T)
objname = gsub(pattern = 'prefix_pattern_|.RData', replacement = '', x = objname)
# print(str(env[[nm]]))
assign(objname, env[[nm]], envir = .GlobalEnv)
0 # succeeded
} )