2013-08-30 2 views
1

У меня есть вектор a=0.01переменная Сохранение в RDATA файл со строкой в ​​имени переменной

Затем я создаю mat<-matrix(data=NA,ncol=10,nrow=10)

Я переименовать матрицу:

assign(x = paste("mat", a, sep = "_"), value = mat) 

В результате переменная будет называться mat_0.01

Тогда я хотел бы сохранить эту переменную:

save(mat_'string', file="mat.Rdata") 

Вопрос в том, как передать новое имя переменной в аргументе сохранения.

+1

'assign' является неправильный подход. Храните данные в списке, например. 'simulation <- list (a = a, mat = mat)'. Если у вас их много, сохраните их в списке списков. – flodel

+0

Я больше не мог согласиться с @flodel. –

+0

это может стать действительно беспорядочным, после того, как я пока узнаю, какой вектор принадлежит к какой матрице? – user1723765

ответ

5

Документация assign предлагает использовать get, чтобы сделать обратный поиск (см примеры в конце):

> a = 1 
> get('a') 
[1] 1 

Для того, чтобы использовать его с save:

to_be_saved_obj = paste("mat", a, sep = "_") 
save(list = to_be_saved_obj, file = 'mat.Rdata') 
Смежные вопросы