gpt4 book ai didi

kdb - 如何找到 kdb 函数的价数

转载 作者:行者123 更新时间:2023-12-04 12:14:40 26 4
gpt4 key购买 nike

有没有办法在 q 中找到函数的价(秩)?
即我正在寻找一个函数 v 使得

v[{42}] gives 0
v[{x*x}] gives 1
v[{x+y}] gives 2
等等

最佳答案

你想做的是

q)f:{x+y+z}
q)/the second item returned by value f is the args of f, so we simply count them.
q)value f
0x63624161410003
`x`y`z <--- args of f
`symbol$()
,`
7 5 6 3 4 2 2
"..f"
""
-1
"{x+y+z}"
q)count value[f]1
3

q)/ wrap it in a function
q)v:{count value[x]1}
(虽然应该注意像 {42} 这样的 niladic func 仍然会显示 1 个参数, x )
见下文:
https://code.kx.com/q/ref/value/#lambda

关于kdb - 如何找到 kdb 函数的价数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69377235/

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