<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
  <channel>
    <title>MaplePrimes - answers and comments on Question, Removing elements from a list.</title>
    <link>http://www.mapleprimes.com/questions/126567-Removing-Elements-From-A-List</link>
    <language>en-us</language>
    <copyright>2026 Maplesoft, A Division of Waterloo Maple Inc.</copyright>
    <generator>Maplesoft Document System</generator>
    <lastBuildDate>Fri, 12 Jun 2026 08:54:01 GMT</lastBuildDate>
    <pubDate>Fri, 12 Jun 2026 08:54:01 GMT</pubDate>
    <itunes:subtitle />
    <itunes:summary />
    <description>The latest answers and comments added to the Question, Removing elements from a list.</description>
    <image>
      <url>http://www.mapleprimes.com/images/mapleprimeswhite.jpg</url>
      <title>MaplePrimes - answers and comments on Question, Removing elements from a list.</title>
      <link>http://www.mapleprimes.com/questions/126567-Removing-Elements-From-A-List</link>
    </image>
    <item>
      <title>remove, select, selectremove</title>
      <link>http://www.mapleprimes.com/questions/126567-Removing-Elements-From-A-List?ref=Feed:MaplePrimes:Removing elements from a list.:Comments#answer126569</link>
      <itunes:summary>&lt;p&gt;Use `remove` for this kind of thing, since doing it in a loop is &lt;a href="http://www.mapleprimes.com/posts/37399-Antipattern-Of-The-Week"&gt;unnecessarily inefficient&lt;/a&gt;. You want to have maple walk the list just the once, and to have it internally construct just the single result (instead of many temporary lists as collectible garbage).&lt;/p&gt;
&lt;pre&gt;&amp;gt; f:=rand(-10..10):
&amp;gt; A:=[seq(f(),i=1..17)];

       [-7, 8, -7, -5, -7, -7, -1, -3, -9, 5, -9, 0, 10, 4, 0, -8, -6]

&amp;gt; remove(t -&amp;gt; t &amp;lt; 0 and t &amp;gt; -7, A); # just an example

               [-7, 8, -7, -7, -7, -9, 5, -9, 0, 10, 4, 0, -8]
&lt;/pre&gt;
&lt;p&gt;You could also use evalf inside the predicate (the first argument of the remove command). Eg,&lt;/p&gt;
&lt;pre&gt;   t -&amp;gt; evalf(t) &amp;lt; 0 and evalf(t) &amp;gt; -7
&lt;/pre&gt;
&lt;p&gt;[edit] Forgot to use your actual example.&lt;/p&gt;
&lt;pre&gt;&amp;gt; A := [[0, 1], [2, 2], [4, 5], [-1, -2]]:

&amp;gt; remove( x -&amp;gt; 2*evalf(x[1]) &amp;gt; evalf(x[2]), A );

                             [[0, 1], [-1, -2]]
&lt;/pre&gt;
&lt;p&gt;Both `remove` and `map` are efficient for this kind of thing, relative to iterating (with a loop).&lt;/p&gt;</itunes:summary>
      <description>&lt;p&gt;Use `remove` for this kind of thing, since doing it in a loop is &lt;a href="http://www.mapleprimes.com/posts/37399-Antipattern-Of-The-Week"&gt;unnecessarily inefficient&lt;/a&gt;. You want to have maple walk the list just the once, and to have it internally construct just the single result (instead of many temporary lists as collectible garbage).&lt;/p&gt;
&lt;pre&gt;&amp;gt; f:=rand(-10..10):
&amp;gt; A:=[seq(f(),i=1..17)];

       [-7, 8, -7, -5, -7, -7, -1, -3, -9, 5, -9, 0, 10, 4, 0, -8, -6]

&amp;gt; remove(t -&amp;gt; t &amp;lt; 0 and t &amp;gt; -7, A); # just an example

               [-7, 8, -7, -7, -7, -9, 5, -9, 0, 10, 4, 0, -8]
&lt;/pre&gt;
&lt;p&gt;You could also use evalf inside the predicate (the first argument of the remove command). Eg,&lt;/p&gt;
&lt;pre&gt;   t -&amp;gt; evalf(t) &amp;lt; 0 and evalf(t) &amp;gt; -7
&lt;/pre&gt;
&lt;p&gt;[edit] Forgot to use your actual example.&lt;/p&gt;
&lt;pre&gt;&amp;gt; A := [[0, 1], [2, 2], [4, 5], [-1, -2]]:

&amp;gt; remove( x -&amp;gt; 2*evalf(x[1]) &amp;gt; evalf(x[2]), A );

                             [[0, 1], [-1, -2]]
&lt;/pre&gt;
&lt;p&gt;Both `remove` and `map` are efficient for this kind of thing, relative to iterating (with a loop).&lt;/p&gt;</description>
      <guid>126569</guid>
      <pubDate>Thu, 13 Oct 2011 19:54:39 Z</pubDate>
      <itunes:author>pagan</itunes:author>
      <author>pagan</author>
    </item>
    <item>
      <title>It was asked and answered</title>
      <link>http://www.mapleprimes.com/questions/126567-Removing-Elements-From-A-List?ref=Feed:MaplePrimes:Removing elements from a list.:Comments#answer126571</link>
      <itunes:summary>&lt;p&gt;A similar question was asked and answered here: http://www.mapleprimes.com/questions/87697-Select-Parts-Of-A-List&lt;/p&gt;
&lt;p&gt;This can be done as follows:&lt;br&gt;&amp;gt; A := [[0, 1], [2, 2], [4, 5], [-1, -2]];&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [2, 2], [4, 5], [-1, -2]]&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&amp;gt; L := map(x-&amp;gt;`if`(2*evalf(x[1]) &amp;lt;= evalf(x[2]), x, NULL), A);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [-1, -2]]&lt;br&gt;&amp;gt; M := map(x-&amp;gt; `if`(0 &amp;lt;=evalf( x[2]), x, NULL), A);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [2, 2], [4, 5]]&lt;/p&gt;</itunes:summary>
      <description>&lt;p&gt;A similar question was asked and answered here: http://www.mapleprimes.com/questions/87697-Select-Parts-Of-A-List&lt;/p&gt;
&lt;p&gt;This can be done as follows:&lt;br&gt;&amp;gt; A := [[0, 1], [2, 2], [4, 5], [-1, -2]];&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [2, 2], [4, 5], [-1, -2]]&lt;/p&gt;
&lt;p&gt;&lt;br&gt;&amp;gt; L := map(x-&amp;gt;`if`(2*evalf(x[1]) &amp;lt;= evalf(x[2]), x, NULL), A);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [-1, -2]]&lt;br&gt;&amp;gt; M := map(x-&amp;gt; `if`(0 &amp;lt;=evalf( x[2]), x, NULL), A);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; [[0, 1], [2, 2], [4, 5]]&lt;/p&gt;</description>
      <guid>126571</guid>
      <pubDate>Thu, 13 Oct 2011 20:19:44 Z</pubDate>
      <itunes:author>Markiyan Hirnyk</itunes:author>
      <author>Markiyan Hirnyk</author>
    </item>
  </channel>
</rss>