MathGroup Archive 2007

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

Search the Archive

Re: Iterate through a list

  • To: mathgroup at smc.vnet.net
  • Subject: [mg76904] Re: [mg76886] Iterate through a list
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Wed, 30 May 2007 05:07:40 -0400 (EDT)
  • Reply-to: hanlonr at cox.net

data = {{1, 0}, {1, 1}, {2, x + x^2 + x^4}, {2, 
    1 + x + x^2 + x^4}, {4, x + x^2}, {4, 1 + x + x^2}, {4, 
    x + x^4}, {4, 1 + x + x^4}, {4, x^2 + x^4}, {4, 
    1 + x^2 + x^4}, {4, x^3 + x^4}, {4, 1 + x^3 + x^4}, {4, 
    x + x^2 + x^3 + x^4}, {4, 1 + x + x^2 + x^3 + x^4}, {5, 
    x + x^3}, {5, 1 + x + x^3}, {5, x^2 + x^3}, {5, 
    1 + x^2 + x^3}, {5, x + x^3 + x^4}, {5, 1 + x + x^3 + x^4}, {5, 
    x^2 + x^3 + x^4}, {5, 1 + x^2 + x^3 + x^4}, {8, x}, {8, x^2}, {8, 
    x^3}, {8, x^4}, {8, 1 + x}, {8, 1 + x^2}, {8, 1 + x^3}, {8, 
    x + x^2 + x^3}, {8, 1 + x + x^2 + x^3}, {8, 1 + x^4}};

fe = First /@ data

{1,1,2,2,4,4,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,8,8,8,8,8,8,8,8,8,8}

{#, Count[fe, #]} & /@ Union[fe]

{{1, 2}, {2, 2}, {4, 10}, {5, 8}, {8, 10}}

Alternatively,

{#[[1]], Length[#]} & /@ Split[Sort[fe]]

{{1, 2}, {2, 2}, {4, 10}, {5, 8}, {8, 10}}

The Sort used above is not needed if the first element of your data is always sorted (as in your example).

Bob Hanlon

---- Nick Hoffman <hoffmannick at gmail.com> wrote: 
> Hello! I'm (somewhat) new to Mathematica and I  need help to iterating
> through a list and counting the occurrence of a number.
> 
> My list looks like:
> 
> {{1,0},{1,1},{2,x+x^2+x^4},{2,1+x+x^2+x^4},{4,x+x^2},{4,1+x+x^2},{4,x+x^4},{4,1+x+x^4},{4,x^2+x^4},{4,1+x^2+x^4},{4,x^3+x^4},{4,1+x^3+x^4},{4,x+x^2+x^3+x^4},{4,1+x+x^2+x^3+x^4},{5,x+x^3},{5,1+x+x^3},{5,x^2+x^3},{5,1+x^2+x^3},{5,x+x^3+x^4},{5,1+x+x^3+x^4},{5,x^2+x^3+x^4},{5,1+x^2+x^3+x^4},{8,x},{8,x^2},{8,x^3},{8,x^4},{8,1+x},{8,1+x^2},{8,1+x^3},{8,x+x^2+x^3},{8,1+x+x^2+x^3},{8,1+x^4}}
> 
> 
> 
> The number that I would need to keep track of is the first in each sub-
> list.
> 
> So for the first couple {{1,0},{1,1},{2,x+x^2+x^4},{2,1+x+x^2+x^4},{4,x
> +x^2},........
> 
> I would need to keep track of 1,1,2,2,4........
> 
> It will not always be 1,2,4,5,8's.  The numbers may be completely
> different on each pass.  Each sublist may be composed of more items
> but the number that I need to keep track of will always be the 1st in
> the sub-list.  Any help or suggestions that you can give me will be
> greatly appreciated.  Thanks so much!
> 



  • Prev by Date: Re: Iterate through a list
  • Next by Date: Re: asymptotics
  • Previous by thread: Re: Iterate through a list
  • Next by thread: Re: Iterate through a list