kdb中跨表的矩阵乘法

matrix multiplication across tables in kdb

我想将 4x2 table 中的所有值乘以 2x1 table,然后得到一个 4x1 向量(最好是 table 中的一列)。

如何将 kdb tables 中的数据转换为矩阵以允许矩阵乘法?

tab2:([]w:1 3 2 1; x:-6 8 0 -3);
taby:([] b: 3, 2);
r:tab2 mmu taby"  / this doesn't work, but this is what I want to get.

mmu 仅适用于浮点数,因此您需要强制转换为浮点数。

q)tab2:([]w:"f" 3 2 1; x:"f"$-6 8 0 -3);
q)taby:([] b:"f", 2);

您还需要通过执行 "flip value flip"

从表中删除向量
q)(flip value flip tab2) mmu flip value flip taby
-9
25
6
-3