Hello, Here's a way.
test <- as.data.frame(matrix(1:20, ncol = 5, nrow=4)) test.ind <- c(1,1,2,2,2) lapply(split(colnames(test), test.ind), function(x) unlist(test[, x])) Hope this helps, Rui Barradas Em 04-09-2012 15:40, Jannis escreveu:
Dear R users, imagine i have a dataframe and an indexing vector with the length of the amount of columns of the dataframe. Is there any convenient way to combine the colums of the dataframe into vectors (or straight away apply fundtions to these subsets) according to the indexing vector in a similar manner to the tapply function? For example, in the follwoing case, I would like to combine columns 1 and two into one vector, and columns 3-4 into another: test = as.data.frame(matrix(1:20, ncol = 5, nrow=4)) test.ind =c(1,1,2,2,2) Thanks a lot! Jannis ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.
______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.