Is this close to what you want: > x E1 E2 E3 origin BASA 0 0 1 N BASO 0 0 1 N BRCO 0 0 1 U CAER 0 0 0 E CAGI 0 1 0 C CEFL 0 1 1 N > aggregate(x[,1:3], list(x[,4]), sum) Group.1 E1 E2 E3 1 C 0 1 0 2 E 0 0 0 3 N 0 1 3 4 U 0 0 1
On Thu, Jul 3, 2008 at 11:54 PM, Michael Denslow <[EMAIL PROTECTED]> wrote: > Dear R-helpers, > > I have a data frame that is similar to the one below. > The row names are species and the E1, E2, E3 columns are presence/absence for > a given site. I have an additional column 'origin' which has information > about the species. > > E1 E2 E3 origin > BASA 0 0 1 N > BASO 0 0 1 N > BRCO 0 0 1 U > CAER 0 0 0 E > CAGI 0 1 0 C > CEFL 0 1 1 N > > I want to get the sum of ALL of the sites for the factors in the column > 'origin'. > > I have used > > by(merge[,2],merge$origin,sum) > and > tapply(merge[,2],merge$origin,sum) > > but this just gives me one column at a time. > How can I get all of the sites summed individually and end up with the site > names as rows and the factors be the columns. > > Thanks in advance for your help! > Michael > > ______________________________________________ > 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. > -- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem you are trying to solve? ______________________________________________ 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.