How about? > vec <- 1:10 > breaks <- c(3,8,10) > g <- cut(vec, c(0, breaks)) > sums <- aggregate(vec, list(g), sum)$x > nums <- tapply(vec, g, paste0, collapse="+") > results <- paste0(sums, " = ", nums) > results [1] "6 = 1+2+3" "30 = 4+5+6+7+8" "19 = 9+10" ---------------------------------------------- David L Carlson Associate Professor of Anthropology Texas A&M University College Station, TX 77843-4352
> -----Original Message----- > From: r-help-boun...@r-project.org [mailto:r-help-bounces@r- > project.org] On Behalf Of Sam Steingold > Sent: Monday, December 10, 2012 1:29 PM > To: r-help@r-project.org > Subject: [R] sum portions of a vector > > How do I sum portions of a vector into another vector? > E.g., for > --8<---------------cut here---------------start------------->8--- > > vec <- 1:10 > > breaks <- c(3,8,10) > --8<---------------cut here---------------end--------------->8--- > I want to get a vector of length 3 with content > --8<---------------cut here---------------start------------->8--- > 6 = 1+2+3 > 30 = 4+5+6+7+8 > 19 = 9+10 > --8<---------------cut here---------------end--------------->8--- > Obviously, I could write a loop, but I would rather have a vectorized > version. > Thanks! > > -- > Sam Steingold (http://sds.podval.org/) on Ubuntu 12.04 (precise) X > 11.0.11103000 > http://www.childpsy.net/ http://palestinefacts.org http://ffii.org > http://jihadwatch.org http://www.PetitionOnline.com/tap12009/ > One can find Holy Grail or Higgs boson, but not the second sock. > > ______________________________________________ > 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.