 
 
 
 
 
 
Re: How Do You Reduce Multiple Elements in a List?
- To: mathgroup at smc.vnet.net
- Subject: [mg33875] Re: How Do You Reduce Multiple Elements in a List?
- From: bghiggins at ucdavis.edu (Brian Higgins)
- Date: Sun, 21 Apr 2002 06:12:22 -0400 (EDT)
- References: <a9r3ve$ltc$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Bob, Here are some possibilities:
mylist = {1, 1, 1, 1, 1, 2, 2, 2, 4, 4, 4, 4, 4, 4};
In[32]:=Map[{#[[1]], Length[#]} &, Split[mylist]]
Out[32]={{1, 5}, {2, 3}, {4, 6}}
In[31]:=Split[mylist] /. {x__Integer} :> {First[{x}], Length[{x}]}
Out[31]={{1, 5}, {2, 3}, {4, 6}}
Cheers,
Brian
Bob Harris <nitlion at mindspring.com> wrote in message news:<a9r3ve$ltc$1 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

