GatherBy

GatherBy[list,f]

gathers into sublists each set of elements in list that gives the same value when f is applied.

GatherBy[list,{f1,f2,}]

gathers list into nested sublists using fi at level i.

Details

  • GatherBy[{e1,e2,e3,},f] evaluates f[ei] for each i to determine how to gather the ei.
  • GatherBy[list,] gives results that follow the ordering of elements in list.
  • Within each sublist generated by GatherBy[list,], elements appear in the same order as in list; the complete sublists are ordered so that their first elements appear in the same order as in list.
  • GatherBy[list] is equivalent to GatherBy[list,Identity], which is also equivalent to Gather[list]. »
  • GatherBy effectively produces an equivalence partition.
  • GatherBy[list,{f1,f2}] is equivalent to Map[GatherBy[#,f2]&,GatherBy[list,f1]].

Examples

open allclose all

Basic Examples  (2)

Gather data in odd and even lists:

In[1]:=
Click for copyable input
Out[1]=

Gather by the first part:

In[1]:=
Click for copyable input
Out[1]=

Applications  (6)

Properties & Relations  (2)

See Also

Gather  GroupBy  SplitBy  SortBy  Split  Sort  Select  Cases

Introduced in 2008
(7.0)