Skip to content

passing object names in a vector to save?

2 messages · Wolski, Thomas Lumley

#
Hi!

Like to write quite a lot (ca 100) of objects from my envirovment with save.
The names of the objects are in  a list nam.

nam<-dir()
nam<-grep("E",nam,value=T)
length(nam)
20

for(x in nam)
{
	#reads the objects and assigns the names.
	assign(x,simFromEmboss(Simmatrix(),x))
	nnam<-paste(x,".rda",sep="")
	print(nnam)
	save(x,file=nnam)	
}


I knew that it fails. (It saves object x containing a char.) 
How to save the objects in separate files not typing each time save(myobj,save="myobj.rda")???

Is there a workaround.


Sincerely Eryk
#
On Fri, 20 Feb 2004, wolski wrote:

            
There are at least two possibilities.  The specialised one is to look at
the help for save() and notice that you can specify a vector of names of
objects with the list= argument
  save(list=x,file=nnam)

The more general one is to use substitute() or do.call(). For example
  do.call("save",list(as.name(x),file=nnam))

	-thomas