我一直在使用 Dyalog APL 进行类分配,并且在转换嵌套数组的每个元素时遇到了问题。
我有一个名为 HOLD 的字符数组,其中包含数量可变的 7 个字符长数组。使用分割转换,我可以将其转换为只读嵌套数组的嵌套数组,但是我需要它们成为字符向量。
我可以使用 MIX 运算符将元素单独更改为字符向量,
TEST←↑HOLD[1] ⍝Test will be a character vector
但我似乎无法同时对每个元素执行此操作。
我最好的尝试看起来像
TEST←↑¨HOLD ⍝Test will be a nested array, seemingly identical to hold
但这似乎将每个元素保留为只读字符数组。如何同时对 HOLD 中的每个元素执行此操作并获得仅包含字符向量的结果嵌套数组?
最佳答案
您正在寻找的是“enlist ”基元。它需要 ⎕ML
>0,所以我将其分配在 dfn 中(以保持范围本地):
测试←{⎕ML←1 ⋄∊⍵}保持
如果您的⎕ML已经>0(参见status bar),您可以简单地执行:TEST←∊HOLD
关于arrays - APL Dyalog 嵌套数组元素转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49123110/