MathGroup Archive 2000

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

Search the Archive

Re: Testing the Head of List Elements

  • To: mathgroup at smc.vnet.net
  • Subject: [mg25233] Re: [mg25200] Testing the Head of List Elements
  • From: Ken Levasseur <Kenneth_Levasseur at uml.edu>
  • Date: Sun, 17 Sep 2000 04:47:12 -0400 (EDT)
  • Organization: UMass Lowell
  • References: <200009150621.CAA10086@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Marshall:

It's clear exactly what form you want the input to take, so you probably
will need to tailor this to your needs.   HeadSort produces a list of
items of the form {"ahead",list of expressions in data with head "ahead"}

This what you had in mind?

I'm sure the code could be improved on but I've got bring my son to
school now.

Ken Levasseur
UMass Lowell
http://faculty.uml.edu/klevasseur

In[13]:=
test = {{2}, "2", 2, two, Hold[1 + 1], {two}}
Out[13]=
{{2}, "2", 2, two, Hold[1 + 1], {two}}
In[14]:=
HeadSort[data_List] := 
  Module[{t, types = Union[Head /@ data]}, 
    Map[(t = #; {t, Select[data, (Head[#] == t) &]}) &, types]]
In[15]:=
HeadSort[test]
Out[15]=
{{Hold, {Hold[
        1 + 1]}}, {Integer, {2}}, {List, {{2}, {two}}}, {String, {"2"}}, \
{Symbol, {two}}}

Marshall Bartlett wrote:
> 
> I'm something of a newbie with Mathematica; please excuse my ignorance.
> 
> I am looking for a clever way to select elements from a list based on their
> type (Head).  Specifically, I want to extract all the elements of type
> dtring from a list of elements of different types (string, number,
> character, etc.).
> 
> Any suggestions?
> 
> --
> --------------------------------------------------------------
> Marshall Bartlett
> Department of Geology and Geophysics
> University of Utah
> mgb_news at hotmail.com
> --------------------------------------------------------------


  • Prev by Date: RE: ParametricPlot3D is buggy
  • Next by Date: RE: How to display the desired numerical precision?
  • Previous by thread: Testing the Head of List Elements
  • Next by thread: Re: Testing the Head of List Elements