Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2009

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

Search the Archive

Picking Off Lists That Have No Numbers

  • To: mathgroup at smc.vnet.net
  • Subject: [mg99471] Picking Off Lists That Have No Numbers
  • From: Gregory Lypny <gregory.lypny at videotron.ca>
  • Date: Wed, 6 May 2009 05:25:48 -0400 (EDT)

Hi everyone,

In a previous thread, "Select and Cases Give Different Answers," I  
discussed a bug, confirmed by others on the list and which Daniel  
Lichtblau of Wolfram said has been fixed in the development kernel,  
and I wonder whether we have the same problem here.

I want to know if a list has no numbers in it.  Here I get the wrong  
answer for the first list.

FreeQ[#, _Number] & /@ {{"NA", 2.3, 3/8}, {"NA", "NA", "NA"}}

yields {True, True}
And same here.

MemberQ[#, _Number] & /@ {{"NA", 2.3, 3/8}, {"NA", "NA", "NA"}}

{False, False}

If I use Real or Rational for the criterion, I get the right answers,  
but that's no good if you have some lists that are mixtures of strings  
and reals and others that are mixtures of strings and rationals.

FreeQ[#, _Real] && FreeQ[#, _Rational]
& /@ {{"NA", 2.3, 3/8}, {"NA", "NA", "NA"}, {"NA", 2.3, "NA"}, {"NA",  
2.3, 9.4}}

Now this works.

Count[#, _String] == Length[#] & /@ {{"NA", 2.3, 3/8}, {"NA", "NA",  
"NA"}}

{False, True}

But this does not!

Count[#, _Number] == 0 & /@ {{"NA", 2.3, 3/8}, {"NA", "NA", "NA"}}

{True, True}

I don't mean to be a pain, but it is important in my sample selection  
procedures to be able to make the distinction between strings and  
numbers, so I'd be interested in knowing whether I'm misunderstanding  
properties such as Number or Numeric (don't really know the  
difference) or this is a bug.


	Gregory


  • Prev by Date: Re: Correcting a typing blunder
  • Next by Date: derivative of a well-behaved function
  • Previous by thread: Re: Given a matrix, find position of first non-zero element
  • Next by thread: Re: Picking Off Lists That Have No Numbers