3

从简单的事情开始:

a =: 3 4 $ i.12

这将创建一个不错的 3 x 4 矩阵。

所以当我尝试

b=: a $ i.5

我得到了很长的 b 输出。我不明白输出是什么(顺便说一下,i.5 是任意的)。我的意思是,当它有一个二维数组作为左手参数时,我不明白 $ 的含义。有人可以解释 b 描述的是什么吗?

4

1 回答 1

4

这是发生的事情:a 变成矩阵

0 1  2  3
4 5  6  7
8 9 10 11

正如你刚才描述的。$ 具有 1 _ 的并列秩,这意味着它将左参数行应用于整个右参数并将结果粘贴在一起。 a $ i.5(0 1 2 3 $ i.5),(4 5 6 7 $ i.5),:(8 9 10 11 $ i.5)

所有子数组都有不同的形状,因此它们被强制转换为适合它们的最不常见的形状,在这种情况下是8 9 10 11. 因此,结果具有形状3 8 9 10 11

于 2013-04-22T14:24:01.550 回答