MathGroup Archive 2006

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

Search the Archive

Re: MapThread and If

  • To: mathgroup at smc.vnet.net
  • Subject: [mg68027] Re: [mg67978] MapThread and If
  • From: János <janos.lobb at yale.edu>
  • Date: Fri, 21 Jul 2006 05:37:12 -0400 (EDT)
  • References: <200607201004.GAA09686@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

On Jul 20, 2006, at 6:04 AM, Arkadiusz Majka wrote:

> Hi,
>
> Of course
>
> MapThread[If[#1 == #2, 0, tr] &, {{1, 2, 3}, {2, 2, 4}}]
>
> I get
>
> {tr, 0, tr}
>
> and for
>
> MapThread[If[#1 == #2, 0, tr] &, {{1, 2, 3}, {2, 2, {3, 4}}}]
>
> I get
>
> {tr, 0, If[3 == {3, 4}, 0, tr]}
>
> How I can build in above MapThread expression information that if 'a'
> is equal to any element from the list {a,b,c,d} the result is 0. In
> above example we have If[3=={3,4},0,tr] what I want to be 0, because 3
> is equal to an element belonging to {3,4}.
>
> Thx,
>
> Arek

Here is a newbie approach:

In[4]:=
MapThread[If[#1 == #2 ||
      MemberQ[#2, #1], 0,
     tr] & , {{1, 2, 3},
    {2, 2, {3, 4}}}]
Out[4]=
{tr, 0, 0}


  • References:
  • Prev by Date: Re: MapThread and If
  • Next by Date: Re: Discrete Event handling in Mathematica
  • Previous by thread: MapThread and If
  • Next by thread: Re: MapThread and If