Problem with Position applied on 2D list?
- To: mathgroup at smc.vnet.net
- Subject: [mg72570] Problem with Position applied on 2D list?
- From: Heiko Damerau <heiko.damerau.news at cern.ch>
- Date: Thu, 11 Jan 2007 01:56:11 -0500 (EST)
Dear All,
There is some strange behaviour of the Position[] function I am
struggling with:
integerRandomTable = Table[Table[Random[Integer, 10], {10}], {10}];
Find the position of all lists containing the value 5 (just a simple
example):
Position[integerRandomTable, _?(MemberQ[#, 5] &)]
gives the expected result, e.g. {{1}, {3}, {4}, {5}, {6}, {7}, {8}}.
However, just asking for all lists not containing the value 5
Position[integerRandomTable, _?(Not[MemberQ[#, 5]] &)]
Doesn't give the expected result but some strange thing, e.g. {{0},
{1,0}, {1, 1}, {1, 2}, {1, 3}, {1, 4}, ..., {10, 3}, {10, 4}, {10, 5},
{10, 6}, {10, 7}, {10, 8}, {10, 9}, {10, 10}, {10}, {}}
What is the explanation for the different behaviour of MemberQ[]
and Not[MemberQ[]]?
Thanks a lot in advance for any help.
Best regards,
Heiko
- Follow-Ups:
- Re: Problem with Position applied on 2D list?
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Problem with Position applied on 2D list?