MathGroup Archive 2006

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

Search the Archive

Re: Extract values and multilpicities from list


Wolfgang,

Here is the obvious solution.

ValsAndMultiplicities[list_?VectorQ] := {First[#], Length[#]} & /@ 
    Split@Sort[list]

lstIn = {2, 3, 4, 4, 2, 1, 1, 5, 4};
ValsAndMultiplicities[lstIn]
{{1, 2}, {2, 2}, {3, 1}, {4, 3}, {5, 1}}

testlist = Array[Random[Integer, {0, 9}] &, 100000];
ValsAndMultiplicities[testlist]
{{0, 9905}, {1, 9952}, {2, 10064}, {3, 10029}, {4, 9980}, {5, 9992}, {6, 
    9928}, {7, 10126}, {8, 9931}, {9, 10093}}

David Park
djmp at earthlink.net
http://home.earthlink.net/~djmp/ 



From: Dr. Wolfgang Hintze [mailto:weh at snafu.de]
To: mathgroup at smc.vnet.net


Given a list of integers which may repeat, e.g.

lstIn = {2,3,4,4,2,1,1,5,4}

provide a list of different values and their respective multiplicities,
in the example,

LstOut= {{1,2},{2,2},{3,1},{4,3},{5,1}}

Who finds the shortest function doing this task in general?

Thanks.

Best regards,
Wolfgang



  • Prev by Date: Re: Extract values and multilpicities from list
  • Next by Date: Re: Extract values and multilpicities from list
  • Previous by thread: Re: Extract values and multilpicities from list
  • Next by thread: Re: Extract values and multilpicities from list