MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Sum elements in a list with conditions


I have a list of sublist of pairs. I wish sum the second elements of
the sublists when the first elements are equals
Example:
Int[]:={{1, a}, {2, b}, {1, c}, {2, d}, {2, e}, {3, f}}
I hope
Out[]:= {{1, a + c}, {2, b + c + e}, {3, f}}

I can do it as  is it is shown below but could any body find and
easier solution.


list1 = {{1, a}, {2, b}, {1, c}, {2, d}, {2, e}, {3, f}};
list2 = GatherBy[list1, First];
{l1, l2} = Transpose[Plus @@@ GatherBy[list, First]];
Transpose[{l1/Length /@ list2 , l2}]



  • Prev by Date: More Button crashes
  • Next by Date: Mathematica code for Kepler's radial velocity equation?
  • Previous by thread: More Button crashes
  • Next by thread: Re: Sum elements in a list with conditions