在APL中组合向量(使用每个向量中的元素创建元组)

时间:2014-07-29 10:11:33

标签: vector apl

我有2个向量:

a ← 1 2 3
b ← 5 6 7

我想用2元素向量元素创建一个嵌套数组,其中一个元素来自b(元组),即:

┌───┬───┬───┐
│1 5│2 6│3 7│
└───┴───┴───┘ 

我如何在APL中这样做?我无法找到任何弹性解决方案,只有(a[1],b[1]) (a[2],b[2])(我还尝试使用功能但没有成功的外部产品。

1 个答案:

答案 0 :(得分:4)

试试这个:

⊂[2] a,[1.5]b

第一部分:a,[1.5]b合并两个数组并创建一个二维数组,每列都是变量a和b的内容。

然后,⊂[2]将每一行封装成对,从而产生您想要的输出。

请注意,如果您使用的是Dyalog,则可能必须使用↑而不是⊂。我认为这取决于⎕ML变量的值,但我没有使用Dyalog,因此我无法对此进行测试。