Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2008

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

Search the Archive

Re: Pattern problem: How to count from a long list of numbers all occurrences of 2 numbers next to each others?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg87412] Re: [mg87393] Pattern problem: How to count from a long list of numbers all occurrences of 2 numbers next to each others?
  • From: Andrzej Kozlowski <akoz at mimuw.edu.pl>
  • Date: Thu, 10 Apr 2008 02:10:53 -0400 (EDT)
  • References: <200804090956.FAA25006@smc.vnet.net>

I think this will work:


ls = {1, 3, 3, 3, 2, 3, 3, 1, 3, 3}


Total[ReplaceList[ls, {___, 3, 3, ___} -> 1]]
4

Total[ReplaceList[ls, {___, 1, 3, ___} -> 1]]
  2

etc.

Andrzej Kozlowski

On 9 Apr 2008, at 18:56, Nasser Abbasi wrote:
> Hello;
>
> I think using Pattern is my weakest point in Mathematica.
>
> I have this list, say this: (it is all a list of integers, no real  
> numbers).
>
> x = {1, 3, 3, 3, 2, 3, 3, 1, 3, 3}
>
> And I want to count how many say a 3 followed immediately by 3. So  
> in the
> above list, there will be 4 such occurrences. And if I want to count  
> how
> many 1 followed by a 3, there will be 2 such cases, etc...
>
> I tried Count[] but I do not know how to set the pattern for "3  
> followed by
> a comma followed by 3" or just "3 followed immediately by 3".
>
> I tried few things, such as the following
>
> In[68]:= Count[x, {3, 3}_]
> Out[68]= 0
>
> Also tried Cases, but again, I am not to good with Patterns, so not  
> sure how
> to set this up at this moment.
>
> Any ideas will be appreciated.
>
> Nasser
> I really need to sit down and study Patterns in Mathematica really  
> well one
> day :)
>
>



  • Prev by Date: Re: What is @@@?
  • Next by Date: Re: Pattern problem: How to count from a long list of
  • Previous by thread: Pattern problem: How to count from a long list of numbers all occurrences of 2 numbers next to each others?
  • Next by thread: Re: Pattern problem: How to count from a long list of numbers all occurrences of 2 numbers next to each others?