Re: DeleteCases : several at once, conditions
- To: mathgroup at smc.vnet.net
- Subject: [mg49402] Re: DeleteCases : several at once, conditions
- From: "Eckhard Hennig" <aidev at n-o-s-p-a-m.kaninkolo.de>
- Date: Sat, 17 Jul 2004 06:39:48 -0400 (EDT)
- References: <cd8b1n$olb$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
"camerzone" <camerzone at yahoo.com> schrieb im Newsbeitrag news:cd8b1n$olb$1 at smc.vnet.net... > Suppose you have a list of lists, something like > {{1, 6, 7}, {3, 6, 9}, {1, 2, 11}, {3, 5, 9}, {2, 5, 6}, {2, 9, 11}, { > 2, 10, 11}, {3, 7, 9}, {5, 8, 11}, {3, 7, 9}, {7, 8, 9}, {2, 5, 12}, > {2, 6, > 10}, {2, 10, 11}, {1, 6, 9}, {6, 10, 12}, {3, 6, 12}, {2, 5, 12}, > {3, 8, > 9}, {1, 2, 7}} > and you want to delete cases matching several different patterns, say > {1,_,_} and {9,_,_} > What's the most efficient way? Use a pattern with Alternatives (|): DeleteCases[list, {1 | 9, _, _}] > Also, can you use conditions with DeleteCases? Say, I want to delete > all cases containing even numbers? You can use a conditional rule (/;) to achieve this: DeleteCases[list, x_ /; Or @@ EvenQ[x]] Best regards, Eckhard -- Dr.-Ing. Eckhard Hennig www.kaninkolo.de/ai aidev \at kaninkolo \dot de