MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Simple list operation

  • To: mathgroup at smc.vnet.net
  • Subject: [mg59474] Re: Simple list operation
  • From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
  • Date: Wed, 10 Aug 2005 02:57:48 -0400 (EDT)
  • Organization: The Open University, Milton Keynes, U.K.
  • References: <dd9mte$isv$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Steve Gray wrote:
> Not having used Mathematica for months, I have forgotten some of the little I knew. 
> 
> I have a list of lists like this:
> 
> test = {  {{4, 5}, {5, 9}, {6, 2}}, 
> 	 {{2, 3},  {3, 5}},
> 	 {{7,1}, {9, 8}, {0, 7}, {2, 8}},
> 	 {{4, 3}, {6, 5}}};
> test // ColumnForm 
>               {{{4, 5}, {5, 9}, {6, 2}},
>                 {{2, 3}, {3, 5}},
>                 {{7, 1}, {9, 8}, {0, 7}, {2, 8}},
>                 {{4, 3}, {6, 5}}}
>     
> What I want to do is just remove the last element in each sublist, with this result:
> 
>            {{{4, 5}, {5, 9}},
>              {{2, 3}},
>              {{7, 1}, {9, 8}, {0, 7}},
>              {{4, 3}}}
> 
> There must be some simple functional way to do this, but I haven't found it.
> I will appreciate any tips. Thank you.
> 
> Steve Gray
> 
Hi Steve,

You can map either *Most* or *Drop* (with a negative index) on your data:

In[1]:=
test = {{{4, 5}, {5, 9}, {6, 2}}, {{2, 3}, {3, 5}}, {{7, 1}, {9, 8}, {0, 
7}, {2, 8}},
    {{4, 3}, {6, 5}}}

Out[1]=
{{{4, 5}, {5, 9}, {6, 2}}, {{2, 3}, {3, 5}}, {{7, 1}, {9, 8}, {0, 7}, 
{2, 8}},
   {{4, 3}, {6, 5}}}

In[2]:=
(Most[#1] & ) /@ test

Out[2]=
{{{4, 5}, {5, 9}}, {{2, 3}}, {{7, 1}, {9, 8}, {0, 7}}, {{4, 3}}}

In[3]:=
(Drop[#1, -1] & ) /@ test

Out[3]=
{{{4, 5}, {5, 9}}, {{2, 3}}, {{7, 1}, {9, 8}, {0, 7}}, {{4, 3}}}

Best regards,
/J.M.


  • Prev by Date: Re: GoTo between different cell
  • Next by Date: An "Expand" Tutorial?
  • Previous by thread: Re: Simple list operation
  • Next by thread: Linear Differential Equations with Matrices