Re: Counting Runs
- To: mathgroup at smc.vnet.net
- Subject: [mg51923] Re: [mg51890] Counting Runs
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Fri, 5 Nov 2004 02:17:17 -0500 (EST)
- Reply-to: hanlonr at cox.net
- Sender: owner-wri-mathgroup at wolfram.com
v={1,1,1,-1,1,1,1,1,1,-1,-1,-1,-1,1};
Length/@Split@Sort@Cases[Split[v], x_List:>x[[1]]]
{2,3}
Length/@Split@Sort[v//.{s___,x_,x_,e___}:>{s,x,e}]
{2,3}
Bob Hanlon
>
> From: Gregory Lypny <gregory.lypny at videotron.ca>
To: mathgroup at smc.vnet.net
> Date: 2004/11/04 Thu AM 01:50:22 EST
> To: mathgroup at smc.vnet.net
> Subject: [mg51923] [mg51890] Counting Runs
>
> Looking for an elegant way to count runs to numbers in a series.
> Suppose I have a list of ones and negative ones such as
> v={1,1,1,-1,1,1,1,1,1,-1,-1,-1,-1,1}.
> I'd like to create a function that counts the number of runs of 1s and
> -1s, which in this case is 3 and 2.
>
> Greg
>
>