Skip to content
Back to formatted view

Raw Message

Message-ID: <40069A5A.9020009@statistik.uni-dortmund.de>
Date: 2004-01-15T13:49:14Z
From: Uwe Ligges
Subject: A language technical question.
In-Reply-To: <5.2.0.9.0.20040115142509.00bafce8@kiev.biotech.kth.se>

Johan Lindberg wrote:

> If I have 100 objekts in a folder and I prefer not to load them manually 
> I wonder how I do this in R if using a for-loop.
> 
> I was thinking initially to do something like this:
> 
> infiles <- dir(pattern=".RData")

For sure you mean
   infiles <- dir(pattern = "\\.RData")


> for(i in length(infiles))

This won't work. I'd try
   for(i in 1:length(infiles))
or much better:
   for(i in seq(along = infiles))


>         {
>         load(infiles[i])
>         paste("kalle", i, sep="") <- saveLoadReference

Whatever saveLoadReference is ... try
   assign(paste("kalle", i, sep=""), saveLoadReference)

Please note that it might be a good idea to use a list "kalle" with 
elements corresponding to the different "saveLoadReference" objects. So 
that you don't mess up you workspace with many objects ....

Uwe Ligges


>         }
> 
> But the line """paste("kalle", i, sep="")""" does not do it for me. I 
> get the error message "Error: Target of assignment expands to 
> non-language object"
> 
> The thing that I do not master is how to create a name in a for-loop 
> that I can assign something to. And I want to be able to change that 
> name as the loop goes on. I want to create in this case
> kalle1
> kalle2
> kalle3
> ...
> kalle100
> 
> and they should all represent the objects that I opened with 
> load(infiles[i])
> 
> 
> Best regards
> 
> / Johan
> 
> 
> 
> ******************************************************************************************* 
> 
> Johan Lindberg
> Royal Institute of Technology
> AlbaNova University Center
> Stockholm Center for Physics, Astronomy and Biotechnology
> Department of Molecular Biotechnology
> 106 91 Stockholm, Sweden
> 
> Phone (office): +46 8 553 783 45
> Fax: + 46 8 553 784 81
> Visiting adress: Roslagstullsbacken 21, Floor 3
> Delivery adress: Roslagsv?gen 30B
> 
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://www.stat.math.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! 
> http://www.R-project.org/posting-guide.html