Re: How can I totalize by month, by year?

• To: mathgroup at smc.vnet.net
• Subject: [mg111916] Re: How can I totalize by month, by year?
• From: sunt05 <sunting.05 at gmail.com>
• Date: Wed, 18 Aug 2010 07:07:58 -0400 (EDT)
• References: <201006301204.IAA27569@smc.vnet.net> <i4d6av\$6r3\$1@smc.vnet.net>

```On 8=D4=C217=C8=D5, =CF=C2=CE=E71=CA=B122=B7=D6, "Leandro Tenfen" <leandrot=
en... at hotmail.com> wrote:
> Hi,
>
> I'm new with Mathematica, I need some help to start it.
>
> I've got a date series like a cashflow, how can I totalize at each date
> change? And how can I totalize by month, by year, etc?
>
> For example:
>
> In[]=
>
> {{{{2010, 8, 3, 0, 0, 0.},
>    65.}, {{2010, 8, 3, 0, 0, 0.}, -72.}, {{2010, 8, 3, 0, 0, 0.},
>    45.}, {{2010, 8, 2, 0, 0, 0.}, 67.}, {{2010, 8, 2, 0, 0, 0.},
>    83.}, {{2010, 8, 2, 0, 0, 0.}, -42.}, {{2010, 7, 30, 0, 0,
>     0.}, -32.}, {{2010, 7, 30, 0, 0, 0.},
>    48.}, {{2010, 7, 30, 0, 0, 0.}, 12.}, {{2010, 7, 30, 0, 0, 0.},
>    34.}, {{2010, 7, 29, 0, 0, 0.}, -52.}, {{2010, 7, 29, 0, 0, 0.},
>    78.}, {{2010, 7, 29, 0, 0, 0.}, -26.}, {{2010, 7, 28, 0, 0, 0.},
>    45.}, {{2010, 7, 28, 0, 0, 0.}, -23.}, {{2010, 7, 28, 0, 0,
>     0.}, -32.}, {{2010, 7, 28, 0, 0, 0.},
>    74.}, {{2010, 7, 27, 0, 0, 0.}, 53.}, {{2010, 7, 27, 0, 0, 0.},
>    58.}, {{2010, 7, 27, 0, 0, 0.}, 25.}}}
>
> Out[]=
>
> {{{{2010, 8, 3, 0, 0, 0.}, 38.}, {{2010, 8, 2, 0, 0, 0.},
>    108.}, {{2010, 7, 30, 0, 0, 0.},
>    28.}, {{2010, 7, 29, 0, 0, 0.}, -10.}, {{2010, 7, 28, 0, 0, 0.},
>    64.}, {{2010, 7, 2, 0, 0, 0.}, 136.}}}
>
> Thanks
> Leandro Tenfen

Hi,
Just append the following expression (a pure function) to your data:
{#[[1, 1]], Total@#[[All, 2]]} & /@ GatherBy[#, First] &

i.e.:

data = {{{2010, 8, 3, 0, 0, 0.},
65.}, {{2010, 8, 3, 0, 0, 0.}, -72.}, {{2010, 8, 3, 0, 0, 0.},
45.}, {{2010, 8, 2, 0, 0, 0.}, 67.}, {{2010, 8, 2, 0, 0, 0.},
83.}, {{2010, 8, 2, 0, 0, 0.}, -42.}, {{2010, 7, 30, 0, 0,
0.}, -32.}, {{2010, 7, 30, 0, 0, 0.},
48.}, {{2010, 7, 30, 0, 0, 0.}, 12.}, {{2010, 7, 30, 0, 0, 0.},
34.}, {{2010, 7, 29, 0, 0, 0.}, -52.}, {{2010, 7, 29, 0, 0, 0.},
78.}, {{2010, 7, 29, 0, 0, 0.}, -26.}, {{2010, 7, 28, 0, 0, 0.},
45.}, {{2010, 7, 28, 0, 0, 0.}, -23.}, {{2010, 7, 28, 0, 0,
0.}, -32.}, {{2010, 7, 28, 0, 0, 0.},
74.}, {{2010, 7, 27, 0, 0, 0.}, 53.}, {{2010, 7, 27, 0, 0, 0.},
58.}, {{2010, 7, 27, 0, 0, 0.}, 25.}};
{#[[1, 1]], Total@#[[All, 2]]} & /@ GatherBy[#, First] &@data

and the result will be:
{{{2010, 8, 3, 0, 0, 0.}, 38.}, {{2010, 8, 2, 0, 0, 0.},
108.}, {{2010, 7, 30, 0, 0, 0.}, 62.}, {{2010, 7, 29, 0, 0, 0.},
0.}, {{2010, 7, 28, 0, 0, 0.}, 64.}, {{2010, 7, 27, 0, 0, 0.},
136.}}

```

• Prev by Date: Re: "in-program" backup facility
• Next by Date: Re: How can I totalize by month, by year?
• Previous by thread: Re: How can I totalize by month, by year?
• Next by thread: Re: How can I totalize by month, by year?