Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2005
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2005

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

Search the Archive

Re: Questions on Apply function

  • To: mathgroup at smc.vnet.net
  • Subject: [mg62890] Re: Questions on Apply function
  • From: dh <dh at metrohm.ch>
  • Date: Thu, 8 Dec 2005 00:04:16 -0500 (EST)
  • References: <dn5ogd$nks$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi Peng,
I think you are confusing Apply and Map.
Apply replaces the head of an expression by a given function.
In your case applying on level 1:
Apply[(#+{-6750,6435})&,{{6945,-4545},{6945, -4545}},{1}]
Here we replace the head e.g. of the first element: {6945,-4545} by the 
function, yielding:
(#+{-6750,6435})&[6945,-4545]
# means by default the first argument, the second is never used!
Therefore, what you get is
6945+{-6750,6435}
Similar for the second list element.

Daniel

PengYu.UT at gmail.com wrote:
> Please look at the following code. I'm wondering the output 1 doesn't
> give me the right answer. 6435-4545 should be 1890. Is there anything
> wrong with input 1? It seems that it is correct, because input 3 works
> well.
> 
> Thanks,
> Peng
> 
> In[1]:=
> Apply[(#+{-6750,6435})&,{{6945,-4545},{6945, -4545}},{1}]
> 
> Out[1]=
> {{195,13380},{195, 13380}}
> 
> In[2]:=
> {-6750,6435}+{6945,-4545}
> 
> Out[2]=
> {195,1890}
> 
> In[3]:=
> Apply[(#+{a,b})&,{{a1,b1},{a2,b2},{a3,b3}},{1}]
> 
> Out[3]=
> {{a+a1,a1+b},{a+a2,a2+b},{a+a3,a3+b}}
> 


  • Prev by Date: Re: Questions on Apply function
  • Next by Date: Re: Roman Maeder's Classes.m
  • Previous by thread: Re: Questions on Apply function
  • Next by thread: Re: Questions on Apply function