Re: part of the expression?
- To: mathgroup at smc.vnet.net
- Subject: [mg126905] Re: part of the expression?
- From: Christoph Lhotka <christoph.lhotka at fundp.ac.be>
- Date: Fri, 15 Jun 2012 15:34:00 -0400 (EDT)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <201206150741.DAA24416@smc.vnet.net>
Hi,
I think that there is no general rule,
In[]:={#, #[0 @@ {0}, 0], #[0 @@ {1}, 0]} & /@ {MemberQ, FreeQ,
Position, Count, Cases, DeleteCases, Drop, Take}
Out[]:={{MemberQ, True, False}, {FreeQ, False,
False}, {Position, {{0}, {1}}, {{0}}}, {Count, 1,
0}, {Cases, {0}, {}}, {DeleteCases, 0[], 0[1]}, {Drop, 0[0],
0[1]}, {Take, 0[], 0[]}}
It actually depends on what you want, e.g. MemberQ does not
look on its head by default, but if you write
MemberQ[0[1], 0, Heads -> True]
True
it will return true.
Just some more examples.
Christoph
On 06/15/2012 09:41 AM, Nasser M. Abbasi wrote:
> I am now in a state of little confusion about when Head[]
> of a list (the value at index 0) is 'looked' at when
> passing a list to a function to process the list.
>
> For example, below I have a list, and then Position[]
> is passed this list to find the nonzero elements in
> the list.
>
> Depending on the test for zero used, different
> results show up. Sometime the Head[] of the list
> is examined (because I get zero index) and sometime
> it is not.
>
> So, my question, what is the rule-of-thumb on this?
> I am making a cheat sheet for Mathematica, and
> wanted to make a simple rules to remember.
>
>
> -- case 1 -----
> v={1,0,3};
> Position[v,x_/;x!=0]
>
> Out[68]= {{1},{3}} (*what I expected*)
> -----------------------
>
> --- case 2 --------------------
> Position[v,x_/;Not[PossibleZeroQ[x]]]
>
> Out[69]= {{0},{1},{3}}
> ----------------------------
>
> ----- case 3 ---------------------
> Position[v,x_/;Not[SameQ[x,0]]]
>
> Out[70]= {{0},{1},{3},{}}
> --------------------------------
>
> ---- case 4--------------
> Position[v, x_ /; Not[SameQ[x, 0]], 2]
>
> Out[71]= {{0},{1},{3}}
> ---------------------------
>
> thanks,
>
> --Nasser
>
- References:
- is Head[] part of the expression?
- From: "Nasser M. Abbasi" <nma@12000.org>
- is Head[] part of the expression?