gpt4 book ai didi

kdb如何将列名传递给函数

转载 作者:行者123 更新时间:2023-12-05 01:14:03 24 4
gpt4 key购买 nike

作为一个简化的例子,我有

tbl:flip `sym`v1`v2!(`a`b`c`d; 50 280 1200 1800; 40 190 1300 1900)

我想将列名传递给类似的函数

f:{[t;c];:update v3:2 * c from t;} 

在这种形式下它不起作用。有什么建议我怎么能做到这一点?谢谢

最佳答案

另一种选择是使用更新语句的函数形式。 https://code.kx.com/q/ref/funsql/#functional-sql

q)tbl:flip `sym`v1`v2!(`a`b`c`d; 50 280 1200 1800; 40 190 1300 1900)
q)parse"update v3:2*x from t"
!
`t
()
0b
(,`v3)!,(*;2;`x)
q){![x;();0b;enlist[`v3]!enlist(*;2;y)]} [tbl;`v2]
sym v1 v2 v3
------------------
a 50 40 80
b 280 190 380
c 1200 1300 2600
d 1800 1900 3800

关于kdb如何将列名传递给函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48763878/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com