gpt4 book ai didi

kdb - 使用 kdb 按日期输出前几条记录

转载 作者:行者123 更新时间:2023-12-02 00:45:29 27 4
gpt4 key购买 nike

假设我有一个表,其中包含日期、符号和大小作为列。每个日期的日期按升序排列,大小按降序排列。如何删减表格,以便仅保留每个日期的前几个(例如 10 个)记录?命令越简单越好。

提前致谢!

最佳答案

给定一个表:

q)show tbl:`date`val!/:(.z.d+til 3) cross 100+til 25;
date val
--------------
2016.10.31 100
2016.10.31 101
2016.10.31 102
2016.10.31 103
2016.10.31 104
..

按日期选择前 N 行:(在下面的示例中,N=2)

q)select from tbl where i in{raze y sublist/:group x}[date;2]
date val
--------------
2016.10.31 100
2016.10.31 101
2016.11.01 100
2016.11.01 101
2016.11.02 100
2016.11.02 101

用途group函数 - 它将返回一个字典,其中包含每个唯一值出现的索引。然后,该函数检索每个唯一值的前 N ​​个索引 ( sublist )。

注意:i 是 kdb 表中的隐式行索引。

关于kdb - 使用 kdb 按日期输出前几条记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40346180/

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