Re: Weird Position[list,form] behavior when used inside of Module.
- To: mathgroup at smc.vnet.net
- Subject: [mg117065] Re: Weird Position[list,form] behavior when used inside of Module.
- From: DrMajorBob <btreat1 at austin.rr.com>
- Date: Wed, 9 Mar 2011 06:56:57 -0500 (EST)
You have mismatched brackets, and no way of testing the code without F.
But here's a possibility:
f = Interpolation at {{.1, 5.3}, {.2, 5.4}, {.3, 5.2}, {.4, 5.9}};
Module[{A, B, RETURN},
A = Table[f@i, {i, {.1, .2, .3, .4}}];
B = Position[A, Min[A]];
RETURN = B]
{{3}}
Better:
Module[{a = Table[f@i, {i, {.1, .2, .3, .4}}]}, Position[a, Min[a]]
]
{{3}}
Or better again:
Module[{a = f /@ {.1, .2, .3, .4}},
Ordering[a, 1]]
{3}
If it has to be {{3}}:
Module[{a = f /@ {.1, .2, .3, .4}},
List@Ordering[a, 1]]
{{3}}
or just
List@Ordering[a = f /@ {.1, .2, .3, .4}, 1]
{{3}}
(No Module needed.)
Bobby
On Tue, 08 Mar 2011 04:36:06 -0600, Dwayne <dwaynedcole at gmail.com> wrote:
>
> This works:
>
> Position[A, Min[A]]]
>
> where, A = {5.3, 5.4, 5.2, 5.9}. the Position function returns ( 3 ).
>
> But this doesn't
>
> Module[{ A, B, RETURN},
> A = Table[ F, {i,{.1, .2, .3, .4}]; (* The function F
> returns {5.3, 5.4, 5.2, 5.9} *)
> B = Position[A, Min[A]];
> RETURN = B]
>
> The above module returns, { }.
>
> Is this a bug?
>
>
>
--
DrMajorBob at yahoo.com