首页 文章
  • 1 votes
     answers
     views

    将kdb日期时间舍入到最接近的偶数秒

    我是kdb q的新手 . 我正在尝试将kdb日期时间舍入到最近的偶数秒 . 例如,对于下表: tp_time price synp ------------------------ 05:00:03 1697.15 1697.15 05:00:05 1697.15 1697.15 ... 我期望的表格如下: tp_time price synp -------...
  • 1 votes
     answers
     views

    KDB选择查询和vs功能

    只是好奇这个KX代码做了什么: " " {`$first x vs y}/: column 它是在更新语句之后使用的大型KX查询的一部分 . 什么是 x vs y 以及它们来自哪里以及 /: 与左侧 " " 一起做什么? 整个查询看起来像这样: select count i by date, somecolumn from update somecolum...
  • 1 votes
     answers
     views

    怎么做kdb工作的怪异功能参数?

    从执行控制章节来看,在我看来,函数参数有奇怪的实现,如下面的代码所示: zs:{`d`P`L`G`D!(system"d"),v[1 2 3],enlist last v:value x}
  • 0 votes
     answers
     views

    kdb中函数中的字符串查询

    func:{[query] value query}; 查询是我的功能的一部分 . 我添加了一些像删除xxx,yyyy(值查询)和一些操作 . 我不确定为什么当我不使用值“查询”时,该功能不起作用 . 它说它找不到表 . 所以我必须在函数中使用值查询,查询是一个参数 . 我需要将“select from tab”传递给函数 . 我的问题是:如果过滤器也是字符串,我该如何发送? func[&quo...
  • 6 votes
     answers
     views

    kdb在按行选择中应用函数

    我有一张 table t: flip `S`V ! ((`$"|A|B|"; `$"|B|C|D|"; `$"|B|"); 1 2 3) 和一些决定 t1: 4 10 15 20 ! 1 2 3 5; t2: 4 10 15 20 ! 0.5 2 4 5; 现在我需要在S中的子串和下面的函数中添加一个带有值的列(这是一个伪代码,因为我...
  • 2 votes
     answers
     views

    KDB命名空间的一个功能

    我有一个功能 f:{[t;c]; q: (1.0;0.8;0.6;0.4;0.2); tc:(cols[t] where cols[t] like c)[0]; sorted:desc t[tc]; qt:( {x: "i"$sorted["i"$x*count sorted]} each q) ! q; k:asc ...
  • 4 votes
     answers
     views

    kdb将列名传递给函数

    我有一张 table t: flip `ref`a`b`c`d`e!(til 10;10?10;10?10;10?10;10?10;10?10) ref a b c d e 0 5 3 3 9 1 1 1 9 0 0 0 2 5 9 4 1 7 3 0 0 5 1 3 4 2 6 8 ...
  • 3 votes
     answers
     views

    如何通过脚本终止远程KDB会话?

    我需要杀死一个远程KDB会话 . 这可以通过多种方式完成,但我更喜欢使用IPC处理程序 . 我开始一个KDB会话: $ q -p 5000 KDB+ 3.0 2012.11.13 Copyright (C) 1993-2012 Kx Systems 然后我开始另一个KDB会话,我设法成功杀死服务器: $ q KDB+ 3.0 2012.11.13 Copyright (C) 1993-2012 ...
  • 1 votes
     answers
     views

    什么是相当于kdb中的Common Lisp函数(map ...)?

    我有一个多价kdb函数,我希望通过从每个参数(从表中获取相同长度的列表)中取一个原子并将参数应用于所述函数来连续应用 . 我觉得这应该很简单,而且我缺少一些基本的东西,但与kdb一样,很难找到解决方案 . 下面的代码片段可以实现我想要的但只适用于顶层(据我所知): a:(1 2 3); b:(1 2 3); {a[x]*b[x]} each til count a
  • 1 votes
     answers
     views

    代表kdb中的树结构

    如何使用kdb中每个节点中的值表示以下树结构? a : 4 b : 3 c : 1 d : 2 e : 7 f : 5 g : 2 我需要设置一个函数来对节点的值求和 . 任何提示赞赏 .
  • 2 votes
     answers
     views

    在KDB中查询多个表

    我想在KDB中查询多个表 . 对于前者如何在KDB中编写以下SQL查询(我不擅长SQL,因此查询格式可能有误): select from table1,table2 where table1.sym=table2.sym and table1.price>table2.price 我知道一些方法,例如 . 连接 . 但是KDB中是否有与SQL相同的功能,它只是在表上使用点表示法 . 同样在...
  • 1 votes
     answers
     views

    kdb数组映射 - 如何将函数应用于数组的每个元素?

    如何将函数应用于kdb中数组的每个元素?例如,以各种语言对数字数组进行平方: javascript: [1,2,3,4].map(square) -> [1,4,9,16] python: [square(x) for x in [1,2,3,4]] -> [1,4,9,16] kdb: {[x] x*x} (1;2;3;4) ...
  • 0 votes
     answers
     views

    与kdb的大量连接

    我有一个超过10,000个工作者的网格,我正在使用qpython将数据附加到kdb . 目前有1000名 Worker ,我得到~40名 Worker 在第一次尝试时无法连接和发送数据,顶部显示q在100%cpu时发生这种情况 . 当我扩展到1万名 Worker 时,问题就会升级 . 数据量仅为100MB . 我试过运行额外的奴隶,但是kdb告诉我我不能用-P选项,我猜我需要使用qpython ....
  • 2 votes
     answers
     views

    仅当列存在时,KDB才应用短语

    我正在寻找一种在KDB中编写函数select的方法,这样只有在列存在时才会应用where短语(为了避免错误) . 如果该列不存在,则默认为true . 我尝试了这个,但它没有用 enlist(|;enlist(in;`colname;key flip table);enlist(in;`colname;filteredValues[`colname])); 我试着编写一个简单的布尔表达式并使用p...
  • 4 votes
     answers
     views

    q / KDB - 用于获取所有前n个元素的nprev函数

    我正在努力在KDB中编写一个 nprev 函数; xprev 函数返回第n个元素,但我需要相对于当前元素的所有prev n 元素 . q)t:([] i:1+til 26; s:.Q.a) q)update xp:xprev[3;]s,p:prev s from t 任何帮助是极大的赞赏 .
  • 6 votes
     answers
     views

    KDB - 运行一个函数,其中函数名称和参数作为字符串传入

    我正在整理一个查询KDB会话并将各种数据返回到前端的进程 . 前端将参数传递给KDB会话,该会话是一个以字符串形式出现的表名 - 例如 "table" ,其中 table 是KDB会话中的表 我可以在引用的基础表上运行一些简单的KDB函数,例如: count `$"table" cols `$"table" 在其他情况下,前端将一个字符...
  • 2 votes
     answers
     views

    KDB,铸造,左操作数

    刚开始使用KDB,有一些问题很难从Q for Mortals获得 . 说,这里http://code.kx.com/wiki/JB:QforMortals2/casting_and_enumerations Cast在左操作数中也是原子的 . 5 6 7h$42 结果: 42h 42 42j 我无法得到我们在这里做的事情:看起来我们投了5 6 7到42,但是什么是42?它代表一种类型吗?
  • 0 votes
     answers
     views

    如何破译此Q / KDB代码

    我需要了解这段代码 . raze(handle1, handle2, handle3)@\:({.myqueries.select_from_all[`some_table] . (a;b;c;();();0b);p1,p2;`}) 基本上,我们的想法是从同一个表中的三个数据库中选择数据 . @\: 在这种情况下做了什么?为什么 {} 在 () 内? 在 select_from_all[some...
  • 0 votes
     answers
     views

    在kdb中的主线程和从属线程之间共享数据

    在主线程和从线程之间共享只读数据的理想方法是什么?根据我的理解,有两种选择: 将共享数据设置为main中的全局变量,以便从属线程可以读取它们 . 将共享变量作为参数传递给从属线程 . 从我的实验来看,即使是大数据集也几乎没有任何性能差异 . 事实上,1)表现略差于2) . 我知道2),kdb将序列化和序列化参数 . 是否对1)做同样的事情?考虑到全局变量的大小比线程特定参数更大,这可以...
  • 0 votes
     answers
     views

    KDB / Q:什么是Vector操作?

    我正在学习KDB和Q编程,并阅读以下语句 - "select performs vector operations on column lists" . Vector operation 在这里是什么意思?有人可以用一个例子来解释一下吗?另外,它如何比标准SQL更快?
  • 2 votes
     answers
     views

    问:KDB / PyQ发布者订阅者使用python对象中的提要

    我一直在尝试重现发布者订阅者示例:https://code.kx.com/wiki/Cookbook/publishsubscribe 一切都工作得很好,只要它纯粹与q相关 . 我一直在尝试使用PyQ内核在jupyter笔记本中重现订阅者 . 我没有成功地在python对象中获得订阅者输出/提要 . 订阅者每次都在内核输出(控制台)中打印 . 我在java客户端上看到q没有太大成功(https:/...
  • 3 votes
     answers
     views

    (kdb / q)是否可以加入或组合行?

    Here is my situation: 我目前有一个看起来像这样的数据表: Symbol Date Time Sequence Type --------------------------------------------------------------------------- A 2013.06.06 ...
  • 5 votes
     answers
     views

    KDB - 如何通过聚合返回功能选择中的所有值

    我有一个 trade 表: trade:([]time:`time$();sym:`symbol$();price:`float$();size:`int$()) `trade insert(5?09:30:00.000;5?`a`b;5?10.75;5?100) 和聚合( aggr )功能: aggr:{[f;c;tab] ?[tab;();`sym;c!(f),'c] } 它适用于以下情...
  • 1 votes
     answers
     views

    KDB / Q Build 股市指数

    我正在尝试 Build 一个股票指数,我正在使用Q.你可能会说,我对此非常陌生 . 虽然我用SQL构建它,但是处理时间太长,因此我求助于Q. 到目前为止的设置如下: table ;将数据添加到表中,对其进行排序: tickers:`ibm`bac`dis`gs`ibm`gs`dis`bac pxs:100 50 30 250 110 240 45 48 dates:2013.05.01 201...
  • 2 votes
     answers
     views

    使用结果中的列在KDB中创建表

    我正在尝试在KDB中创建一个表,其中列是查询的结果 . 例如,我已经加载了股票数据并搜索给定时间窗口股票交易的价格 . 我创建了一个函数getTrades [Sybmol;日期;开始时间;停止时间] 这将搜索我的数据库并返回在开始和停止时间之间交易的价格 . 因此,我对苹果30秒窗口的结果可能是:527.10,527.45,527.60,526.90等 . 我想要做的是现在使用xbar创建一个表,...
  • 0 votes
     answers
     views

    kdb历史数据库分区设计 - 数千个符号的每日数据

    kdb+ 数据库在 10,000 符号(例如股票,指数,ETF)上存储每日价格/回报数据的最佳分区(如果有的话)是什么? 我们谈论的是每个符号 25 年的每日数据(中位数)( 25 * 200 = 5,000 records ) . 因此总体大小将为 10,000 符号x 5,000 天= 50,000,000 记录 . 数据库将在一天结束时为每个符号写一个新价格 . 最典型的查询是将一个子集...
  • 3 votes
     answers
     views

    kdb / q从TAQ数据构建NBBO

    我有一张 table ,每个股票/场地都有买/卖 . 就像是: taq:`time xasc ([] time:10:00:00+(100?1000);bid:30+(100?20)%30;ask:30.8+(100?20)%30;stock:100?`STOCK1`STOCK2;exhcnage:100?`NYSE`NASDAQ) 如何从每个股票的一段时间(一分钟桶)中获得所有交易所的最佳/报...
  • 2 votes
     answers
     views

    如何更新KDB表中的相关值

    我正在努力寻找一种有效的方法来更新列值 fv ,当它取决于其他一些列 sAA 和 sBB 的先前值时 . 反过来需要使用新计算的 fv 版本更新当前日期,然后可以计算下一个 fv ,依此类推 . 为了说明这个问题,请考虑一个简单的例子:假设我有一张某些股票的价格表 AA 和 BB ,以及权重 wAA 和 wBB ,每个交易日期 td . 此外,我有一个基金 Value fv 和股份拥有列 sA...
  • 4 votes
     answers
     views

    在输入列表上迭代函数(Q / KDB)

    我有一个函数 f[symbol;date0;date1] ,以及一系列日期 2017.12.04 2017.12.05 2017.12.06 我想为给定的符号运行此函数 - 假设“AAPL” - 每天一次 . 在本质上: f[AAPL;2017.12.04;2017.12.04] f[AAPL;2017.12.05;2017.12.05] f[AAPL;2017.12.05;2017.12.05...
  • 3 votes
     answers
     views

    调用string()时的输出差异

    我想将一些具有不同类型的变量连接成一个字符串 . 这很好用: q)"select ", string[10:00:00] ," abc" "select 10:00:00 abc" 当我用括号调用字符串时,输出是不同的: q)"select ", string(10:00:00) ," abc" ...

热门问题