Re: Segregating the elements of a list based on given lower and upper bounds
- To: mathgroup at smc.vnet.net
- Subject: [mg77311] Re: [mg77205] Segregating the elements of a list based on given lower and upper bounds
- From: DrMajorBob <drmajorbob at bigfoot.com>
- Date: Wed, 6 Jun 2007 07:27:57 -0400 (EDT)
- References: <30655226.1181096377426.JavaMail.root@m35>
- Reply-to: drmajorbob at bigfoot.com
Clear[inbounds]
inbounds[{low_?NumericQ, high_?NumericQ}][x_?NumericQ] :=
low <= x <= high
inbounds[{low_?NumericQ, high_?NumericQ}, x_List] :=
Select[x, inbounds[{low, high}]]
inbounds[x_List, y_List] := inbounds[#, x] & /@ y
Length /@ inbounds[a, b]
{1, 1, 0, 1, 2}
Bobby
On Tue, 05 Jun 2007 05:58:10 -0500, R.G <gobiithasan at yahoo.com.my> wrote=
:
> Hi Mathgroup members,
>
> Say, I have a list with the following elements:
>
> A={6.32553, 7.09956, 8.56784, 16.1871, 15.3989, 17.2285, 7.40711, \
> 14.8876, 19.9068, 10.0834}
>
> and I have the following list with each {xvalue, yvalue}={lower boun=
d,
> upper bound}:
> B={{0, 7}, {8, 10}, {11, 12}, {13, 15}, {16, 18}}
>
> How can I segregate values in A according to lower bound and upper
> bound from B and find the number number of occurrence ?For example:
> {0,7}={6.32553}, thus the number of occurrence is 1.
> {8, 10}={7.09956,7.40711,8.56784}, the number of occurrence is 3.
> {11,12}=None, the number of occurrence is 0.
>
> The code should be able work for any number Length[A] and Length[B].
> Any suggestion please?
> Thank you,
> R.G
>
>
>
-- =
DrMajorBob at bigfoot.com