Re: Extract Integers

• To: mathgroup at smc.vnet.net
• Subject: [mg131427] Re: Extract Integers
• From: Ray Koopman <koopman at sfu.ca>
• Date: Sun, 21 Jul 2013 21:41:37 -0400 (EDT)
• Delivered-to: l-mathgroup@mail-archive0.wolfram.com
• Delivered-to: l-mathgroup@wolfram.com
• Delivered-to: mathgroup-outx@smc.vnet.net
• Delivered-to: mathgroup-newsendx@smc.vnet.net

This avoids having to specify all the non-Rational heads.
Also, I have changed -> to :> for safety's sake.

Cases[ Replace[ equ, {Rational[a_,b_]:>{a,b}, _[c__]:>{c}},
{0,Infinity}], _Integer, -1]

{1, 1, 2, 2, 1, 6, 3, 1, 24, 4, 1, 120, 5}

----- Dana DeLouis <dana01 at icloud.com> wrote:
> Hi.  I've run out of ideas.  Does anyone know the proper way to
> extract all the integers from the following simplified version
> of a larger problem I'm working on?
>
> equ=Series[Exp[x],{x,0,5}] //Normal
>
> 1+x+x^2/2+x^3/6+x^4/24+x^5/120
>
> When trying to extract all the integers,
> I understand numbers like 120 are part of Rational[1,120]
>
> equ //FullForm
>
> << Not shown here >>
>
> I thought looking at all LevelSpec was the solution, but apparently not.
>
> Cases[equ, _Integer, Infinity]
> {1,2,3,4,5}
>
> (* Or *)
>
> Position[equ, _Integer, Infinity]
> {{1},{3,2,2},{4,2,2},{5,2,2},{6,2,2}}
>
> Extract[equ, %]
> {1,2,3,4,5}
>
> Both ways extract from the numerator, but I just can't seem to extract
> the {2,6,24,120} inside the denominator.
> Does anyone know the proper way?
> Thanks in advance.  :>~
>
> Dana
> Mac & Math 9

• Prev by Date: Re: Extract Integers
• Next by Date: Re: Extract Integers
• Previous by thread: Re: Extract Integers
• Next by thread: Re: Extract Integers