我具有以下功能:
lsfit:{(enlist y) lsq x xexp/: til 1+z};
interp:{[xn;x;y]sum (1;xn)*flip lsfit[x;y;1]};
和桌子
table:([] amount:500 730 1250;xRng:(0 1;0 1;1 2);yRng:(5 7f; 5 7f; 7 10f));table
amount xRng yRng
500 0 1 5 7f
730 0 1 5 7f
1250 1 2 7 10f
如何应用interp
返回“结果”列并将其附加到下表中?
amount xRng yRng result
500 0 1 5 7f 6
730 0 1 5 7f 6.46
1250 1 2 7 10f 7.75
我正在尝试类似
interp[first table[`amount]%1000;first table[`xRng];first table[`yRng]]
在第一行工作正常,但不确定如何扩展整个表。
答案 0 :(得分:4)
您可以使用以下命令将函数应用于所有行:
update result:interp'[amount%1000;xRng;yRng] from table