【问题标题】:(kdb+/q) Is it possible to join or combine rows?(kdb+/q) 是否可以加入或合并行?
【发布时间】:2023-03-09 19:30:01
【问题描述】:

这是我的情况: 我目前有一个看起来像这样的数据表:

Symbol    Date          Time             Sequence       Type
---------------------------------------------------------------------------
A      2013.06.06      20:00:00.137   36654383         BestAsk
A      2013.06.06      20:00:00.137   36654383         BestBid
A      2013.06.07      04:00:00.788   3                BestAsk
A      2013.06.07      04:00:00.788   3                BestBid
A      2013.06.07      04:00:00.788   3                BestAsk
A      2013.06.07      04:00:00.788   3                BestBid
A      2013.06.07      07:01:09.584   43126            BestAsk
A      2013.06.07      07:01:09.584   43126            BestBid
A      2013.06.07      07:02:09.012   43431            BestAsk
A      2013.06.07      07:02:09.012   43431            BestBid

如您所知,这些行是成对出现的。 每个 BestAsk 和 BestBid 行具有相同的符号日期时间和序列。 由于它们都很好地排序,我认为这些行可以根据它们的顺序组合,但是我查看的所有连接命令 仅合并列(aj、aj0 等)。我尝试将表格翻转成字典,然后以字典形式组合,但没有成功。

我在结果中寻找的是相同的值符号日期时间序列不必重复,但在类型列中, 显示 BestAsk 和 BestBid :

Symbol   Date          Time             Sequence       Type
---------------------------------------------------------------------------
A      2013.06.06      20:00:00.137   36654383          BestAsk,BestBid
A      2013.06.07      04:00:00.788   3                BestAsk,BestBid
A      2013.06.07      04:00:00.788   3                BestAsk,BestBid
A      2013.06.07      07:01:09.584   43126            BestAsk,BestBid
A      2013.06.07      07:02:09.012   43431            BestAsk,BestBid

类似的东西,谢谢!

【问题讨论】:

    标签: kdb q-lang


    【解决方案1】:
    select distinct Type by Symbol,Date,Time,Sequence from table
    

    或使用 xgroup

    【讨论】:

    • 没想到这么简单,谢谢!
    • 我无法在 code.kx 页面上找到“by”的引用,它到底是做什么的?
    猜你喜欢
    • 2022-11-08
    • 1970-01-01
    • 1970-01-01
    • 2017-03-21
    • 2017-03-14
    • 1970-01-01
    • 1970-01-01
    • 2017-03-01
    • 2022-08-15
    相关资源
    最近更新 更多