That's basically what I came up with:

   oc=: _1 + ~.@[ #/.~@,"1 ]
   (>:i.6) oc 1+?5 6$6
0 2 2 0 0 2
1 0 2 1 0 2
1 2 0 1 1 1
2 1 1 1 0 1
1 0 0 2 0 3

Thanks,

-- 
Raul

On Mon, Nov 4, 2019 at 2:54 AM Ric Sherlock <[email protected]> wrote:
>
> Here's one option...
>
>    ]m=: 5 6  >:@:?@$ 6
> 2 3 6 3 6 2
> 6 1 3 3 6 4
> 2 1 5 2 4 6
> 1 2 4 6 3 1
> 4 1 6 6 4 6
>
>   oc=: <:@([: #/.~ ,)"1
>
>    (>:i.6) oc m
> 0 2 2 0 0 2
> 1 0 2 1 0 2
> 1 2 0 1 1 1
> 2 1 1 1 0 1
> 1 0 0 2 0 3
>
> On Mon, 4 Nov 2019, 20:07 Skip Cave, <[email protected]> wrote:
>
> > NB. Generate multiple sets of 6 random integers from 1 to 6:
> >
> > ]m=:5 6$>:?30#6
> >
> > 2 2 1 6 6 5
> >
> > 6 5 6 6 6 6
> >
> > 3 4 3 3 5 2
> >
> > 1 2 6 4 3 1
> >
> > 5 6 1 3 2 4
> >
> >
> > NB. Use dyadic function oc (occurrence count) to calculate the occurrence
> > counts of
> >
> > NB. the integers in the right (y) argument, using the reference integer set
> > in the left {x} argument:
> >
> >
> > (>:i.6) oc m
> >
> > 1 2 0 0 1 2
> >
> > 0 0 0 0 1 5
> >
> > 0 1 3 1 0 1
> >
> > 2 1 1 1 0 1
> >
> > 1 1 1 1 1 1
> >
> >
> > NB. If an integer in the x noun is not in the y noun, the result of oc will
> > be zero in that place.
> >
> > NB. If there is an integer in the y noun that is not in the x noun, it is
> > ignored.
> >
> > NB. What is oc? The verb 'oc' should allow for any length reference set (x
> > argument),
> >
> > NB. any width right argument, and any number of items (rows)
> >
> >
> > Skip
> > ----------------------------------------------------------------------
> > 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