Hi Peng,

Here is a suggestion using tapply:

R> with(x, tapply(Value, list(State, Month), FUN = sum))
R> with(x, tapply(Value, list(State, Year), FUN = sum))
R> with(x, tapply(Value, list(State, Year, Month), FUN = sum))

with 'x' your data set.  Please take a look at ?tapply for more information.
Another useful functions might be ?ave and ?aggregate.

Best,
Jorge

On Thu, Dec 3, 2009 at 1:50 PM, Peng Cai <> wrote:

> Hi R Users,
>
> I'm wondering how can I calculate two (or three) way sum of a variable. A
> sample data is:
>
> State Month Year Value
> NC Jan 1996 1
> NC Jan 1996 2
> NC Feb 1997 2
> NC Feb 1997 3
> NC Mar 1998 3
> NC Mar 1998 4
> NY Jan 1996 4
> NY Jan 1996 5
> NY Feb 1997 5
> NY Feb 1997 6
> NY Mar 1998 6
> NY Mar 1998 7
>
> I'm trying to sum up "value" column by State*Month and by State*Month*Year.
> Also, I may need to calculate mean value along with "sum".
>
> Any help would be greatly appreciated,
>
> Thanks,
> Peng
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> 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.
>

	[[alternative HTML version deleted]]


