kdb中表之间的矩阵乘法

时间:2017-05-19 18:32:28

标签: kdb q-lang

我想将4x2表中的所有值乘以2x1表,然后返回一个4x1向量(理想情况下是表中的一列)。

如何将kdb表中的数据转换为矩阵以允许矩阵复制?

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.

1 个答案:

答案 0 :(得分:3)

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

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

您还需要通过执行"翻转值翻转"

来从表格中剥离向量
q)(flip value flip tab2) mmu flip value flip taby
-9
25
6
-3