Group: Difference between revisions

645 bytes added ,  1 year ago
"Paragraph cleanup"
(add group page)
 
("Paragraph cleanup")
 
(8 intermediate revisions by 3 users not shown)
Line 1:
{{primitive|==x}}
 
The '''group''' primitive, denoted by <code>=</code>, is used to group the indices of an array by the values they represent in the array, returning a dictionary.
Line 7:
`a`b`c`d`k!(0 1 7 8;,2;3 4 6;,5;,9)
</pre>
 
The [[keys]] from the '''group''' dictionary represent the [[distinct]] elements of the array.
 
<pre>
="abracadabra"
"abrcd"!(0 3 5 7 10;1 8;2 9;,4;,6)
 
!="abracadabra"
"abrcd"
?"abracadabra"
"abrcd"
</pre>{{Works in|ngn/k}}
 
In K2 and K3, the group primitive returns a nested array:<pre>
="abracadabra"
(0 3 5 7 10
1 8
2 9
,4
,6)
</pre>{{Works in|Kona}}
 
In order to mimic the K6 behaviour, you can use [[distinct]]: <code>{(?x)!=x}</code> to get a dict.
 
<pre>
{(?:x)!=x}`a`a`b`c
.((`a
0 1
)
(`b
,2
)
(`c
,3
))
</pre>{{Works in|Kona}}
 
[[Category:Verbs]]
[[Category:Operator verbs]]
[[Category:Primitives]]
720

edits