Re: Positions of Polynomials in expr?
- To: mathgroup at smc.vnet.net
- Subject: [mg109368] Re: Positions of Polynomials in expr?
- From: Bob Hanlon <hanlonr at cox.net>
- Date: Fri, 23 Apr 2010 03:50:39 -0400 (EDT)
Any condition can be made a pattern
expr = {E^x, x, x^2, Log[x]};
Position[expr, _?(! PolynomialQ[#, x] &), 1]
{{1}, {4}}
Bob Hanlon
---- Jack L Goldberg 1 <jackgold at umich.edu> wrote:
=============
Hi Folks,
"Select" and "Cases" are commands that do essentially the same thing,
namely, pick out elements of a list which, in the first case matches a
criterion, in the second case, matches a pattern. I call these
parallel commands. Is there a command parallel to "Position" which
uses criterion rather than pattern matching?
If no such parallel function exists, can one easily construct one?
I actually have a special case in mind. I want to find the position
of all parts of expr which fail the test PolynomialQ[f_,x]. Naively,
I thought one might Map
Polynomial[#,x]& to all levels of expr and then find the positions of "False".
I haven't tried it because I'm betting someone knows how to do this
neatly and I do not like to re-invent the wheel. When I do so, the
wheel tends to be more like an oval than a circle.
Thanks!
Jack