Difference between revisions of "Pick"
Jump to navigation
Jump to search
m (Text replacement - "http://help.dyalog.com" to "https://help.dyalog.com") |
|||
Line 35: | Line 35: | ||
=== Documentation === | === Documentation === | ||
− | * [ | + | * [https://help.dyalog.com/latest/#Language/Primitive%20Functions/Pick.htm Dyalog] |
* [http://microapl.com/apl_help/ch_020_020_610.htm APLX] | * [http://microapl.com/apl_help/ch_020_020_610.htm APLX] | ||
{{APL built-ins}}[[Category:Primitive functions]] | {{APL built-ins}}[[Category:Primitive functions]] |
Latest revision as of 14:33, 14 July 2020
⊃
|
Pick (⊃
) is a dyadic primitive function which performs deep indexing on a possibly nested array. Pick allows to extract a value through multiple layers of nesting in a single function application. Pick uses the Right Shoe glyph.
Examples
The left argument X must be a vector where each element of X specifies the multi-dimensional index at each layer of the right argument Y. The result of X⊃Y
is the item of Y at the location specified by X.
⎕←G←2 3⍴('ABC' 1)('DEF' 2)('GHI' 3)('JKL' 4)('MNO' 5)('PQR' 6)
┌───────┬───────┬───────┐
│┌───┬─┐│┌───┬─┐│┌───┬─┐│
││ABC│1│││DEF│2│││GHI│3││
│└───┴─┘│└───┴─┘│└───┴─┘│
├───────┼───────┼───────┤
│┌───┬─┐│┌───┬─┐│┌───┬─┐│
││JKL│4│││MNO│5│││PQR│6││
│└───┴─┘│└───┴─┘│└───┴─┘│
└───────┴───────┴───────┘
(⊂2 1)⊃G
┌───┬─┐
│JKL│4│
└───┴─┘
((2 1)1)⊃G
JKL
((2 1)1 2)⊃G
K
See also
External links
Documentation