如何在kdb中获取元素匹配项在列表中的位置?
例如,如果我有一个列表如何在kdb中获取元素匹配项在列表中的位置?,kdb,q-lang,Kdb,Q Lang,例如,如果我有一个列表a:2 5 3 1,我可以将另一个列表与之匹配,比如说b:3 5,它与a[2]的3个和a[1]的5个匹配。我有兴趣获得索引21 我尝试了其中3 5 in 2 5 3 1,但没有成功。我认为您应该使用?来实现此目的: q)2 5 3 1?3 5 2 1 谢谢,但是这在查询中似乎不起作用:选择b?a从翻转ab!(12;(3 2 1;3 2 1))给出错误:rank注意?只返回第一次出现的索引。听起来这正是你想要的,但值得一提。如果您需要所有位置,则可以使用类似的方法,其中每个
a:2 5 3 1
,我可以将另一个列表与之匹配,比如说b:3 5
,它与a[2]
的3个和a[1]
的5个匹配。我有兴趣获得索引21
我尝试了
其中3 5 in 2 5 3 1
,但没有成功。我认为您应该使用?
来实现此目的:
q)2 5 3 1?3 5
2 1
谢谢,但是这在查询中似乎不起作用:
选择b?a从翻转
ab!(12;(3 2 1;3 2 1))
给出错误:rank
注意?
只返回第一次出现的索引。听起来这正是你想要的,但值得一提。如果您需要所有位置,则可以使用类似的方法,其中每个b=\:a