gpt4 book ai didi

kdb - 如何通过迭代多个列表来生成数据表? (KDB)

转载 作者:行者123 更新时间:2023-12-01 03:16:15 29 4
gpt4 key购买 nike

我有一个功能 quotes[ticker;startDate;endDate] ,以及一个函数 indexConstituents[index;startDate;endDate]产生以下内容:

daterange: 2017.12.05,2017.12.06;

quotes'[AAPL;daterange]

date time sym price
2017.12.05 09:45 AAPL 101.20
2017.12.06 09:45 AAPL 102.30

quotes'[GOOG;daterange]

date time sym price
2017.12.05 10:00 GOOG 800.50

quotes'[BBRY;daterange]

date time sym price
2017.12.06 11:15 BBRY 02.10


indexConstituents'[DJIA;daterange]

date sym shares divisor
2017.12.05 AAPL 20 2
2017.12.05 GOOG 5 1
2017.12.06 AAPL 10 1.5
2017.12.06 BBRY 100 1

我需要一种方法来正常运行 indexConstituents 函数以生成一组天数内的成分列表(如上面的第二个表所示), 然后从表 1 中为每个成分获取数据 .最后,我需要连接两个表中的数据以产生以下内容:
data:
date time sym price shares divisor
2017.12.05 09:45 AAPL 101.20 20 2
2017.12.06 09:45 AAPL 101.30 10 1.5
2017.12.05 10:00 GOOG 800.50 5 1
2017.12.06 11:15 BBRY 02.10 200 1

前两个表的代码:
([] date:2017.12.05,2017.12.06; time:09:45,09:45; sym:`AAPL,`AAPL; price:101.20,102.30)

([] date:2017.12.05,2017.12.05,2017.12.06,2017.12.06; sym:`AAPL,`GOOG,`AAPL,`BBRY; shares:20f,5f,10f,100f; divisor:2f,1f,1.5f,1f)

最佳答案

我认为最好的方法是从 indexConstituents'[DJIA;daterange] 分配结果表到一个变量,这样我们就可以拉出 sym列和申请 distinct到它。

然后,您可以使用该符号列表作为 quotes 的第一个参数。 .

最后将两个结果表连接在一起。

idx:indexConstituents'[DJIA;daterange];
q:quotes\:/:[distinct idx`sym;daterange];
q lj 2!idx

希望这可以帮助!

关于kdb - 如何通过迭代多个列表来生成数据表? (KDB),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48687944/

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