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
