[Jprogramming] Help me using rank (")
Marshall Lochbaum
mwlochbaum at gmail.com
Wed Jun 8 19:33:53 UTC 2016
I'm assuming there are a lot of missing newlines in your sample output,
and it should actually be a shape 3 5 5 array. Here's a solution which
uses rank many times:
(3 5 5$0) ]"0"1 0"2 1 i.5
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
0 0 0 0 0
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
It's probably better practice to use negative rank, even though the
numbers are harder to read:
(3 5 5$0) ]"_1 _"_1"_1 _ i.5
This makes it clear that we are mapping over just the left argument,
then over both arguments, then over just the left argument again.
Marshall
On Wed, Jun 08, 2016 at 09:22:43AM +0000, 'Bo Jacoby' via Programming wrote:
> Dear J'ers.
> Please tell me how to program the 3 5 5 array below.
> I am experimenting rather than understanding. I expect the answer to be quite elementary.
> Thanks! Bo.
>
> 0 0 0 0 01 1 1 1 12 2 2 2 23 3 3 3 34 4 4 4 4
> 0 0 0 0 01 1 1 1 12 2 2 2 23 3 3 3 34 4 4 4 4
> 0 0 0 0 01 1 1 1 12 2 2 2 23 3 3 3 34 4 4 4 4
>
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm
More information about the Programming
mailing list