Re: How do I use BooleanSelect?
- To: mathgroup at smc.vnet.net
- Subject: [mg6404] Re: [mg6390] How do I use BooleanSelect?
- From: "w.meeussen" <w.meeussen.vdmcc at vandemoortele.be>
- Date: Sun, 16 Mar 1997 19:25:19 -0500 (EST)
- Sender: owner-wri-mathgroup at wolfram.com
At 01:21 15-03-97 -0500, jason welter wrote:
>
>BooleanSelect is a function in the DataManipulation.m add on package
>in Statistics. It doesn't seem to work. Here's some background on it
>as well as TakeWhile which does work:
>
>??BooleanSelect
>
>"BooleanSelect[list, sel] keeps elements of list for which the
>corresponding element of sel is True."
>Attributes[BooleanSelect] = {Protected, ReadProtected}
>
>??TakeWhile
>
>"TakeWhile[list, pred] takes elements from the beginning of list while
>pred is True."
>Attributes[TakeWhile] = {Protected, ReadProtected}
>
>Here is some test data I have been using to explore these functions:
>
>testa = {1,2,3,4,-2,y,6,7};
>testb={{1,2},{-2,3},{23,56},{90,54},{-2,-200}};
>
>The function TakeWhile works in the following way:
>
>TakeWhile[testa,NumberQ]
>
>Out[16]={1,2,3,4,-2}
>
>Boolean Select does not:
>
>BooleanSelect[testa,NumberQ]
>
>Out[21]=BooleanSelect[{1,2,3,4,-2,y,6,7},NumberQ]
>
>What I really need is a working function like BooleanSelect that will
>let me sort through arrays, like "testb". I need to screen out all
>groups in testb that either have -2 or -200 as an element. For
>example:
>
>BooleanSelect[testb,???]
>
>{{1,2},{23,56},{90,54}};
>
>There must be a way. What is it?
>
>
try:
In[157]:=
Cases[testb,{a_/;(a!=-2),b_/;(b!=-200)}]
Out[157]=
{{1,2},{23,56},{90,54}}
it looks like BooleanSelect takes as second argument a list of
"corresponding element(s)" each True or False.
that you can generate with:
Cases[testb,{a_,b_}->(a!=-2)&&(b!=-200)]
have fun,
wouter.
Dr. Wouter L. J. MEEUSSEN
eu000949 at pophost.eunet.be
w.meeussen.vdmcc at vandemoortele.be