Re: Newbie question about column sums of arrays
- To: mathgroup at smc.vnet.net
- Subject: [mg68542] Re: [mg68508] Newbie question about column sums of arrays
- From: Sseziwa Mukasa <mukasa at jeol.com>
- Date: Wed, 9 Aug 2006 04:19:26 -0400 (EDT)
- References: <200608081029.GAA29659@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
On Aug 8, 2006, at 6:29 AM, George W. Gilchrist wrote: > I have spent several hours trying to find an answer to what must be > an incredibly simple problem: how to sum the columns of an array > containing a random mix of +1 and -1s. For example: > > In[7]:= > AA1=Array[x, {4,4}]/. x:> (-1)^Random[Integer] > > > Out[7]= > \!\(\*FormBox[ > RowBox[{"(", "\[NoBreak]", GridBox[{ > {\(1[1, 1]\), \(1[1, 2]\), \(\((\(-1\))\)[1, 3]\), \(1[1, 4] > \)}, > {\(1[2, 1]\), \(1[2, 2]\), \(\((\(-1\))\)[ > 2, 3]\), \(\((\(-1\))\)[2, 4]\)}, > {\(1[3, 1]\), \(\((\(-1\))\)[3, 2]\), \(1[3, 3]\), \(1[3, 4] > \)}, > {\(\((\(-1\))\)[4, 1]\), \(1[4, > 2]\), \(1[4, 3]\), \(\((\(-1\))\)[4, 4]\)} > }, > RowSpacings->1, > ColumnSpacings->1, > ColumnAlignments->{Left}], "\[NoBreak]", ")"}], > TraditionalForm]\) > > In[8]:= > Total[AA1] > > Out[8]= > {(-1)[4,1]+1[1,1]+1[2,1]+1[3,1], > (-1)[3,2]+1[1,2]+1[2,2]+1[4,2], > (-1)[1,3]+(-1)[2,3]+1[3,3]+1[4,3], > (-1)[2,4]+(-1)[4,4]+1[1,4]+1[3,4]} > > > So, Total[] seems to do the right thing, but I cannot get the actual > sums as real numbers, only this rather verbose representation. I have > searched the manuals for just about everything I can think of with no > luck. So, thanks for any help you can give me. The problem is in your definition of AA1 (incidentally to avoid future headaches it helps to use variables that start with lower case letters). Array is meant to take a function as its first argument where the arguments to the function are the indices of the array element. It is used for constructing arrays whose element values are functions of their position. The easiest way to make your matrix, whose elements do not depend on position is with Table: In[38]:= aa1=Table[(-1)^Random[Integer],{4},{4}] Total[aa1] Out[38]= {{-1,-1,1,1},{-1,1,1,-1},{1,-1,1,-1},{-1,1,-1,-1}} Out[39]= {-2,0,2,-2} Regards, Ssezi > > > Cheers, George > > .................................................................. > George W. Gilchrist Email #1: gwgilc at wm.edu > Department of Biology, Box 8795 Email #2: kitesci at cox.net > College of William & Mary Phone: (757) 221-7751 > Williamsburg, VA 23187-8795 Fax: (757) 221-6483 > http://gwgilc.people.wm.edu/ > >
- References:
- Newbie question about column sums of arrays
- From: "George W. Gilchrist" <gwgilc@wm.edu>
- Newbie question about column sums of arrays