目前,假設我有一個包含sym-date
行的數據庫。
如果我想提取兩個系列並按日期對齊它們,我目前必須執行兩個查詢,然後加入它們:
pair: {[x;y]
aa: select date, a: target1 from z where sym = x;
bb: select date, b: target1 from z where sym = y;
1!aa ij 1!bb
}
corr[`AAPL;`MSFT]
在 KDB 中是否有更優雅的方法來做到這一點?
看起來您本質上想要旋轉數據?https://code.kx.com/q/kb/pivoting-tables/
q)t:([]date:2021.01.01 2021.01.01 2021.01.01;sym:`AAPL`MSFT`TSLA;target1:1.1 2.2 3.3)
q)P:`AAPL`MSFT
q)exec P#(sym!target1) by date:date from t
date | AAPL MSFT
----------| ---------
2021.01.01| 1.1 2.2
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句