Re: Lists: how to?
- To: mathgroup at smc.vnet.net
- Subject: [mg110014] Re: Lists: how to?
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Sat, 29 May 2010 04:43:42 -0400 (EDT)
subs3[numbr_Integer] := Subsets[Range[numbr], {3}] data = subs3[7]; Select[data, FreeQ[#, 1 | 4 | 5] &] {{2, 3, 6}, {2, 3, 7}, {2, 6, 7}, {3, 6, 7}} Cases[data, _?(FreeQ[#, 1 | 4 | 5] &)] {{2, 3, 6}, {2, 3, 7}, {2, 6, 7}, {3, 6, 7}} Bob Hanlon ---- "S. B. Gray" <stevebg at ROADRUNNER.COM> wrote: ============= Hello: I have this line subs3 = Subsets[Range[numbr], {3}] which for numbr=7 gives subs3= {{1,2,3}, {1,2,4}, {1,2,5}, {1,2,6}, {1,2,7}, {1,3,4}, {1,3,5}, {1,3,6}, {1,3,7}, {1,4,5}, {1,4,6}, {1,4,7}, {1,5,6}, {1,5,7}, {1,6,7}, {2,3,4}, {2,3,5}, {2,3,6}, {2,3,7}, {2,4,5}, {2,4,6}, {2,4,7}, {2,5,6}, {2,5,7}, {2,6,7}, {3,4,5}, {3,4,6}, {3,4,7}, {3,5,6}, {3,5,7}, {3,6,7}, {4,5,6}, {4,5,7}, {4,6,7}, {5,6,7}} Given one of these sublists, say {1,4,5}, I want a nice way to delete all members of the subs3 list which have 1,4, or 5 in any one of the three positions. The reduced list in this example would be {{2,3,6}, {2,3,7}, {2,6,7}, {3,6,7}}. The way I'm doing it runs DeleteCases nine times. Is there a better way? Steve Gray