Transforming a list
- To: mathgroup at smc.vnet.net
- Subject: [mg103108] Transforming a list
- From: Don <donabc at comcast.net>
- Date: Tue, 8 Sep 2009 05:58:16 -0400 (EDT)
I am given: lst = {{c, e, g}, {d, f}, {e, g}, {f}, {g}, {}} I want to form a list of sublists where the first sublist consists of the first elements from each sublist of lst, the second sublist the second elements from each of the sublists of lst etc. The final outcome should be: {{c, d, e, f, g}, {e, f, g}, {g}} I can do this by first padding the sublists of lst (to make them the same length)and then using Transpose. But how to get rid of the trailings 0's? For example: newLst = Map[PadRight[#, Length[lst[[1]]]] &, lst] Transpose[newLst] which produces: {{c, d, e, f, g, 0}, {e, f, g, 0, 0, 0}, {g, 0, 0, 0, 0, 0}} Is there a better way to end up with {{c, d, e, f, g}, {e, f, g}, {g}} Thank you.
- Follow-Ups:
- Re: Re: Transforming a list
- From: DrMajorBob <btreat1@austin.rr.com>
- Re: Transforming a list
- From: Leonid Shifrin <lshifr@gmail.com>
- Re: Transforming a list
- From: DrMajorBob <btreat1@austin.rr.com>
- Re: Transforming a list
- From: Adriano Pascoletti <adriano.pascoletti@dimi.uniud.it>
- Re: Transforming a list
- From: Thomas Dowling <thomasgdowling@gmail.com>
- Re: Re: Transforming a list