Re: Questions on Apply function
- To: mathgroup at smc.vnet.net
- Subject: [mg62895] Re: Questions on Apply function
- From: Jean-Marc Gulliet <jeanmarc.gulliet at Gmail.com>
- Date: Thu, 8 Dec 2005 00:04:23 -0500 (EST)
- Organization: The Open University, Milton Keynes, UK
- References: <dn5ogd$nks$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
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}} > Hi Peng, I think input three does not yield what you are looking for. What you would like is, according to input two, {a, b} + {c, d} == {a + c, b + d) However, inputs one and three return for the first term {a + c, b + c) that is {-6750 + 6945, 6435 + 6945} == {195, 13380}. The function you should use is *Map* as in the following In[1]:= Map[(#+{-6750,6435})&,{{6945,-4545},{6945,-4545}}] Out[1]= {{195,1890},{195,1890}} Regards, /J.M.