Skip to content

naming datasubsets in a loop

2 messages · paladini, Rui Barradas

#
Hello everbody,
I want to generate different subsets of my data-set and safe this 
subsets with names listet in a vector. Because in reality I have got 
about 70 subsets I want to realize this in a loop
Somehow like this:


names=c("nam1", 
"nam2","nam3","nam4","nam5","nam6","nam7","nam8","nam9","nam10")


for (i in 1:10){

subset(originaldata, originaldata[ ,130]<=time[i]) #This subset should 
get the name  safed in "names" on position i



}


I don't know how to realized it. None of my attempts worked,- so I 
would be grateful for help.

Best regards

Claudia
#
Hello,

The best way of doing what you want is to save the subsets in a list.

subsets.list <- vector("list", 10)
for(i in 1:10)
     subsets.list[[i]] <- subset(...etc...)

names(subsets.list) <- names

You can also assign names using assign().


for(i in 1:10){
     sb <- subset(...etc...)
     assign(names[i], sb)
}


But this will create 10 different objects, the first way, using a list, 
keeps them all together.

Also, as you've seen, 'names' is an R function, choose something else 
for your variable name.

Hope this helps,

Rui Barradas
Em 29-10-2012 17:10, paladini escreveu: