A source of confusion for a newcomer can be that the items of an array are 
shown 
in a vertical list except when the array is a vector the items are shown in a 
horizontal list.  Thus in the array

    ]a =: 3 2 4 $ i. 24
  0  1  2  3
  4  5  6  7

  8  9 10 11
12 13 14 15

16 17 18 19
20 21 22 23

the items are three 2 by 4 arrays shown in a vertical list, the items of each 
item are two 4-vectors shown in a vertical list, but the items of the items of 
the items are four scalars shown in a horizontal list.

Can you now understand

    +/a
24 27 30 33
36 39 42 45
    +/"2 a
  4  6  8 10
20 22 24 26
36 38 40 42
    +/"1 a
  6 22
38 54
70 86

?

Kip Murray

On 6/8/2011 4:47 PM, Henry Rich wrote:
> You almost had it.  I've fixed the error below.
>
> Henry Rich
>
> On 6/8/2011 5:41 PM, Squint6 wrote:
>>
>> Hi,
>>
>>
>> I have just started with J and I have a question concerning rank (I think).
>>
>>
>> I don't understand why the following does what it does:
>>
>>
>> a=. 2 2 $ i.4
>>
>>
>> b=.+/a
>>
>>
>> c=.+/"1 a
>>
>>
>> After executing these lines
>> a contains
>> 0 1
>> 2 3
>> b contains 2 4 and
>> c contains 1 5
>>
>>
>> I understand where b is coming from but c's value confuses me.  Here's how 
>> my (faulty) reasoning about c=.+/"1 a goes.
>
>> The "1 applies to the verb (+/) giving it a rank of 1.  Therefore (+/) is 
>> applied to the 1-cells of a,
>
>> which I believe are the lists (0 1) and (2 3).
> ERROR FIXED HERE:
>> Therefore we have (+/ 0 1) , (+/ 2 3)
>>
>>
>> Thanks.
>> Kent
>>
>>
>>
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to