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