On Fri, 2008-02-29 at 12:02 -0500, Jason Horn wrote: > Does anyone know how to get a vector of column sum from a data frame? > You can use colSums(), but this gives you a object of type "numeric" > with the column labels in the first row, and the sums in the second > row. I just want a vector of the sums, and I can't figure out a way > to index the "numeric" object. > > Thanks!
The labels you are seeing are just the 'names' attribute of the vector of column sums that is being printed. You can ignore them for most uses such as using them in some computations: > df <- data.frame(A = runif(10), B = runif(10), C = rnorm(10)) > colSums(df) A B C 5.982975 5.566133 -4.696136 > str(colSums(df)) Named num [1:3] 5.98 5.57 -4.70 - attr(*, "names")= chr [1:3] "A" "B" "C" > colSums(df) * 4 A B C 23.93190 22.26453 -18.78454 If you really need to get rid of the names: > unname(colSums(df)) [1] 5.982975 5.566133 -4.696136 HTH G -- %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% Dr. Gavin Simpson [t] +44 (0)20 7679 0522 ECRC, UCL Geography, [f] +44 (0)20 7679 0565 Pearson Building, [e] gavin.simpsonATNOSPAMucl.ac.uk Gower Street, London [w] http://www.ucl.ac.uk/~ucfagls/ UK. WC1E 6BT. [w] http://www.freshwaters.org.uk %~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~% ______________________________________________ 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.