RE: How Do You Reduce Multiple Elements in a List?

*To*: mathgroup at smc.vnet.net*Subject*: [mg33874] RE: [mg33863] How Do You Reduce Multiple Elements in a List?*From*: "David Park" <djmp at earthlink.net>*Date*: Sun, 21 Apr 2002 06:12:21 -0400 (EDT)*Sender*: owner-wri-mathgroup at wolfram.com

Bob, list = {1, 1, 1, 1, 1, 2, 2, 2, 4, 4, 4, 4, 4, 4}; Split[list] {First[#], Length[#]} & /@ % {{1, 1, 1, 1, 1}, {2, 2, 2}, {4, 4, 4, 4, 4, 4}} {{1, 5}, {2, 3}, {4, 6}} If your list is not initially in order you will want to use Split[Sort[list]]. David Park djmp at earthlink.net http://home.earthlink.net/~djmp/ > From: Bob Harris [mailto:nitlion at mindspring.com] To: mathgroup at smc.vnet.net > > Howdy, > > This seems like such a simple thing, yet I've search through the big book > trying to figure it out. Perhaps someone can help me... > > Given a list of integers that generally contains the same number > many times, > I'd like to reduce it to a list that just gives me the number/count pairs. > For example, I'd like to convert the list > {1, 1, 1, 1, 1, 2, 2, 2, 4, 4, 4, 4, 4, 4} > into > {{1,5}, {2,3}, (4,6}} > > Is there a built-in function to do this? Seems like a histogramming > operation, but I get no useful matches from ?*Hist*. > > Thanks, > Bob H > >