Try: > w <- ave(x,g) > n <- ave(x,g, FUN=length) > wnew <- (w*n - x)/(n-1)
Or > s <- ave(x,g, FUN=sum) > n <- ave(x,g, FUN=length) > wnew <- (s-x)/(n-1) Hope this helps, -- Gregory (Greg) L. Snow Ph.D. Statistical Data Center Intermountain Healthcare [EMAIL PROTECTED] (801) 408-8111 > -----Original Message----- > From: [EMAIL PROTECTED] > [mailto:[EMAIL PROTECTED] On Behalf Of Casey Klofstad > Sent: Tuesday, November 13, 2007 8:45 AM > To: r-help@r-project.org > Subject: [R] group mean, minus each row's value > > I used the following to assign each row the group average, > where w is the new group average variable, x is the variabale > to be averaged, and g is the nominal group indicator: > > w <- ave(x,g) > > Now I want to calculate the group average, but WITHOUT each > row's value of x. Is there an easy way to do this? I'm sure > I'm missing something obvious here, but for the life of me I > can't figure it out. > > Thanks! > -- > Casey A. Klofstad > University of Miami > Department of Political Science > Coral Gables, FL > > [EMAIL PROTECTED] > http://moya.bus.miami.edu/~cklofstad > > ______________________________________________ > 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.