Skip to content

create a vector looping over a frame

2 messages · Siddique, Amer, Thomas W Blackwell

#
Hello,

I have a data.frame
[1] "Year"   "Series" "Age"    "WM"     "WF"     "HM"     "HF"     "BM"    
 [9] "BF"     "IM"     "IF"     "AM"     "AF"     "Yr"  

how do i loop over a subset of variables in this frame to create a vector of
length equal to the number of variables in the subset such that the vector's
ith element is the result of an aggregate fncn applied to the ith variable?

eg,
sumvar<-c(sum(WM),...,sum(AF))

if i try

for(i in 4:13){
sumVar<- sum(popA[,i])
sumVar2<-c(sumVar) 
}

it returns
[1] 287567
[1] 1

which is only the value at the last spot. i cant quite figure this simple
loop. 

Thanks,

Amer Siddique
#
On Fri, 18 Jul 2003, Siddique, Amer wrote:

            
sumvar <- sapply(popA[ ,4:13], sum)

You can use any function, even a user-written one, in place of sum().
When you see the help for  sapply(), remember that a data.frame is
also a list ("inherits" from list).

-  tom blackwell  -  u michigan medical school  -  ann arbor  -