|
[Date Index]
[Thread Index]
[Author Index]
Re: split
- To: mathgroup at smc.vnet.net
- Subject: [mg73606] Re: split
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Fri, 23 Feb 2007 04:27:18 -0500 (EST)
- Organization: The Open University, Milton Keynes, UK
- References: <erjo7l$nrf$1@smc.vnet.net>
Arkadiusz.Majka at gmail.com wrote:
> Hi,
>
> I want to split a list, say
>
> z = {1, 3, 2, 6, 4, 7, 5,1,7};
>
> into sublist of elements that are less or equal 3.
>
> so I want to obtain
>
> {{1,3,2},{6,4,7,5},{1},{7}}
>
> How to do it? Probably by applying Split, but what to put in Test?
>
> Split[z,#<=3&] gives :
>
> {{1, 3, 2, 6}, {4}, {7}, {5}, {1, 7}}
>
> Why 6 was put in first sublist together with 1, 3, and 2 since 6>3 and
> should be together with 4 in the second sublist?
Hi Arek,
The built-in function Split compares two consecutive elements at once.
So what we want is some lists that are singletons or for which any two
consecutive elements are less or equal to three. Also, we want some
other lists that are singletons or for which two consecutive elements
are greater than three. This is summed up in the expression below.
In[1]:=
z = {1, 3, 2, 6, 4, 7, 5, 1, 7};
Split[z, (#1 <= 3 && #2 <= 3) || (#1 > 3 && #2 > 3) & ]
Out[2]=
{{1, 3, 2}, {6, 4, 7, 5}, {1}, {7}}
Regards,
Jean-Marc
Prev by Date:
Re: Roman Numerals
Next by Date:
Re: NonLinearRegression Weights
Previous by thread:
Re: split
Next by thread:
Re: split
|