Kdb 查找列表中元素数最多的列表
如何找到列表中元素数量最多的列表 例如,假设我有以下列表:Kdb 查找列表中元素数最多的列表,kdb,Kdb,如何找到列表中元素数量最多的列表 例如,假设我有以下列表: l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`JPM) 我想返回`MSFT`JPM`GOOG`BNP 哪个是元素数最多的列表(4个元素)。一种方法是: first l where c=max c:count each l 对每个列表进行计数,获取最大计数的位置并将其索引到原始列表中,其中一种方法是: first l where c=max c:count each l 对每个列表进行计数,
l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`JPM)
我想返回`MSFT`JPM`GOOG`BNP
哪个是元素数最多的列表(4个元素)。一种方法是:
first l where c=max c:count each l
对每个列表进行计数,获取最大计数的位置并将其索引到原始列表中,其中一种方法是:
first l where c=max c:count each l
对每个列表进行计数,获取最大计数的位置并将其索引到原始列表中。另一种方法是
1#desc l
或者你可以先用
替换1
,使它更具可读性另一种方法是
1#desc l
或者您可以将1#
替换为first
,以使其更具可读性
l first idesc l
找到最高的降序等级并将其用作索引 为了好玩,这里有另一个选择
l first idesc l
找到最高的降序等级并将其用作索引 根据符号组成,当前接受的答案将失败
q)l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`ZZZZ`ZZZZ`ZZZZ)
q)l first idesc l
`ZZZZ`ZZZZ`ZZZZ
无论列表内容如何,以下操作都有效
q)l first idesc count each l
根据符号组合,当前接受的答案将失败
q)l : (`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`ZZZZ`ZZZZ`ZZZZ)
q)l first idesc l
`ZZZZ`ZZZZ`ZZZZ
无论列表内容如何,以下操作都有效
q)l first idesc count each l
所以这不是最好的答案,请考虑以下几点。q) l:(AAPL
GOOG;AAPL;
MSFTJPM
GOOGBNP;
ZZZZXXXX
yyyyy)q)l idesc l````code>zzzzzz
XXXXyyyyy``它正在枚举符号,因此
zzzzzz`大于MSFT
基本上,这将根据每个列表中使用的符号而失败,AAPL
GOOG;AAPL;
MSFTJPM
GOOGBNP;
ZZZZXXXX
yyyyy)q)l idesc l````code>zzzzzzXXXXyyyyy``它正在枚举符号,因此
zzzzzz`大于MSFT
基本上,这将根据每个列表中使用的符号而失败,Z
A
对于KDBY中的符号,您需要首先添加以获取实际列表。如果没有它,它是一个列表列表。您需要首先添加
,以获得实际列表。如果没有它,它就是一个列表列表。这不会给出所有列表的正确答案。试试Callum Biggs答案中的这个例子:(`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`ZZZZ`ZZZZ`ZZZZ)这不会给出所有列表的正确答案。试试Callum Biggs答案中的这个例子:(`AAPL`GOOG;`AAPL;`MSFT`JPM`GOOG`BNP;`ZZZZ`ZZZZ`ZZZZ)