如何将转换应用于 KDB 中的组?
How do I apply transformations to groups in KDB?
我有一个 table 的形式:
sym date o h l c v d sp ao ah al ac av
-------------------------------------------------------------------------------------------------------
A 1999.11.18 45.5 50 40 44 4.47399e+07 0 1 30.10473 33.08212 26.46569 29.11226 4.47399e+07
A 1999.11.19 42.94 43 39.81 40.38 1.08971e+07 0 1 28.41092 28.45062 26.33998 26.71712 1.08971e+07
A 1999.11.22 41.31 44 40.06 44 4705200 0 1 27.33244 29.11226 26.50539 29.11226 4705200
我想把之前的收盘价降到今天:
select sym, date, c, prev c from daily
但这不尊重 sym
代码组。我如何在代码级别应用此转换?
编辑:
另外,有没有一种方法可以使用此架构对 date
执行排序?
这有点乱,但这就是您要找的大致内容吗?
q)t: ([] sym: `a`b`a`b`a; date: 2021.01.01 2021.01.01 2021.01.02 2021.01.02 2021.01.03; c: 10 11 8 9 10)
q)t
sym date c
-----------------
a 2021.01.01 10
b 2021.01.01 11
a 2021.01.02 8
b 2021.01.02 9
a 2021.01.03 10
q)ungroup select date, c, prevClose: prev c by sym from `date xasc t
sym date c prevClose
---------------------------
a 2021.01.01 10
a 2021.01.02 8 10
a 2021.01.03 10 8
b 2021.01.01 11
b 2021.01.02 9 11
如果没有,你能给出一些示例输出吗?
我有一个 table 的形式:
sym date o h l c v d sp ao ah al ac av
-------------------------------------------------------------------------------------------------------
A 1999.11.18 45.5 50 40 44 4.47399e+07 0 1 30.10473 33.08212 26.46569 29.11226 4.47399e+07
A 1999.11.19 42.94 43 39.81 40.38 1.08971e+07 0 1 28.41092 28.45062 26.33998 26.71712 1.08971e+07
A 1999.11.22 41.31 44 40.06 44 4705200 0 1 27.33244 29.11226 26.50539 29.11226 4705200
我想把之前的收盘价降到今天:
select sym, date, c, prev c from daily
但这不尊重 sym
代码组。我如何在代码级别应用此转换?
编辑:
另外,有没有一种方法可以使用此架构对 date
执行排序?
这有点乱,但这就是您要找的大致内容吗?
q)t: ([] sym: `a`b`a`b`a; date: 2021.01.01 2021.01.01 2021.01.02 2021.01.02 2021.01.03; c: 10 11 8 9 10)
q)t
sym date c
-----------------
a 2021.01.01 10
b 2021.01.01 11
a 2021.01.02 8
b 2021.01.02 9
a 2021.01.03 10
q)ungroup select date, c, prevClose: prev c by sym from `date xasc t
sym date c prevClose
---------------------------
a 2021.01.01 10
a 2021.01.02 8 10
a 2021.01.03 10 8
b 2021.01.01 11
b 2021.01.02 9 11
如果没有,你能给出一些示例输出吗?