Re: List Manipulation
- To: mathgroup at smc.vnet.net
- Subject: [mg31548] Re: List Manipulation
- From: awacs7 at home.com (Aram Schiffman)
- Date: Sat, 10 Nov 2001 01:19:36 -0500 (EST)
- References: <9sgeqm$93v$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Jonathan, Here's one way: ClearAll[toOne] toOne[x_] := If[Head[x] === List, x, If[x === 0 || x === 0., 0, 1]] alist = {{A, {0, 0, 0, a}}, {B, {b, 0, 0, d}}, {C, {-a, -b, 0, 0}}, {D, {c, 0, 0, -c}}}; unwound = Thread[alist]; list01 = {unwound[[1]], MapAll[toOne, unwound[[2]]]}; Thread[list01] That gives this for output: Out[12]= {{A, {0, 0, 0, 1}}, {B, {1, 0, 0, 1}}, {C, {1, 1, 0, 0}}, {D, {1, 0, 0, 1}}} Good luck, Aram