小编Tho*_*yth的帖子

KDB:从每个组中选择前n行

如何从每个组中提取前n行?例如:对于表bb:([]sym:(4#`a),(5#`b);val: til 9)

  sym   val
  -------------
  a     0
  a     1
  a     2
  a     3
  b     4
  b     5
  b     6
  b     7
  b     8
Run Code Online (Sandbox Code Playgroud)

如何通过sym选择每组的前两行?

谢谢

kdb q-lang

4
推荐指数
1
解决办法
2046
查看次数

将子字符串放入新列

我有一个表格,其中包含一个具有以下格式数据的列 - 让我们将列称为“标题”,将表格称为“s”

标题

ab.123
ab.321 
cde.456
cde.654
fghi.789
fghi.987
Run Code Online (Sandbox Code Playgroud)

我正在尝试获取“.”之前的字符的唯一列表。所以我最终得到了这个:

ab
cde
fghi
Run Code Online (Sandbox Code Playgroud)

我尝试将初始列选择到表格中,然后尝试进行更新以使用“ss”创建一个新列,该列是点的位置。

像这样:

t: select title from s
update thedot: (title ss `.)[0] from t
Run Code Online (Sandbox Code Playgroud)

然后我打算尝试做第三列,它是“标题”中的“N”个字符,其中 N 是存储在“thedot”列中的值。

我尝试更新时得到的只是“类型”错误。

有任何想法吗?我对 kdb 很陌生,所以毫无疑问以一种非常愚蠢的方式做一些简单的事情。

substring kdb q-lang

3
推荐指数
1
解决办法
4113
查看次数

KDB 从每组中选择第一行

非常愚蠢的问题......考虑下面按 sym 排序的表 t1。

t1:([]sym:(3#`A),(2#`B),(4#`C);val:10 40 12 50 58 75 22 103 108)

sym val
A   10
A   40
A   12
B   50
B   58
C   75
C   22
C   103
C   108
Run Code Online (Sandbox Code Playgroud)

我想选择与每个符号对应的第一行,如下所示:

(`sym`val)!(`A`B`C;10j, 50j, 75j)

sym val
A   10
B   50
C   75
Run Code Online (Sandbox Code Playgroud)

必须有一个单线来做到这一点。要获取每个符号的最后一行,就像select by sym from t1. 任何提示?

select kdb

3
推荐指数
2
解决办法
4095
查看次数

计算kdb表中每个变量的最小值和最大值

考虑下表:

sym A B
X   1 2
Y   4 1
X   6 9
Z   6 3
Z   3 7
Y   1 8
Run Code Online (Sandbox Code Playgroud)

我想为我的每个符号 X、Y 和 Z 找到最小 A 值和最大 B 值,并将它们显示在新表中,即

sym minA maxB
X   1    9
Y   1    8
Z   3    7
Run Code Online (Sandbox Code Playgroud)

谢谢。

kdb q-lang

3
推荐指数
1
解决办法
636
查看次数

Jupyter笔记本自动完成显示重复选项

Jupyter笔记本的自动完成似乎有效,但不知何故,它将显示该方法的重复选项.例如下面: np.allclose重复条目 jupyter重复条目

对于每个可能的选项,下拉菜单将显示2个相同的选项.为什么会发生这种情况以及如何解决?

ipython-notebook jupyter jupyter-notebook

3
推荐指数
1
解决办法
691
查看次数

q - 使用 try catch 加载脚本

我有一个 aq 脚本C:\some\path\startup.q,可以将其他几个 q 脚本加载到当前会话中,如下所示

\l C:\some\other\path\script1.q
\l C:\some\other\path\script2.q
\l C:\some\other\path\script3.q
Run Code Online (Sandbox Code Playgroud)

现在,我可能想检查多个路径等script1.q。例如,当我处于部署环境而不是本地环境中时,这些路径是不同的。所以我想尝试捕获负载操作符

@[\l;C:\some\other\path\script1.q;`errormessage]
Run Code Online (Sandbox Code Playgroud)

这当然是无稽之谈。但我在 q 中找到了此处system描述的命令。例如

\w / lists memory usage
system "w" / same command
Run Code Online (Sandbox Code Playgroud)

但是,这不适用于\l

system "l C:\some\path\startup.q"
Run Code Online (Sandbox Code Playgroud)

谢谢您的帮助

kdb q-lang

3
推荐指数
1
解决办法
397
查看次数

KDB +,铸造,左操作数

刚刚开始使用KDB +,有一些难以从Q for Mortals获得的问题.

说,这里 http://code.kx.com/wiki/JB:QforMortals2/casting_and_enumerations

Cast在左操作数中也是原子的. 5 6 7h$42 结果:

42h
42
42j
Run Code Online (Sandbox Code Playgroud)

我无法得到我们在这里做的事情:看起来我们投了5 6 7到42,但是什么是42?它代表一种类型吗?

kdb

2
推荐指数
1
解决办法
179
查看次数

如何处理KDB中包含减号的符号?

我遇到了一个烦人的问题。我们在 kdb+ 数据库中得到了股票代码 AGN-A,但是查询这个代码是否在代码列表中几乎是不可能的。以下查询根本不起作用:

`$"A-o" in (`$"A-o";`R)
Run Code Online (Sandbox Code Playgroud)

知道如何解决这个问题吗?

symbols kdb q-lang q-query

2
推荐指数
1
解决办法
590
查看次数

kdb/q:增加浏览器中的可见行

您好我正在运行kd​​b并通常使用浏览器通过在端口上运行kdb来基本查看表:\ p xxx 我的问题是如何增加浏览器中的可见行?目前我相信有一些固定数量的行是可见的.我希望能够查看更多或更少的行.有设置还是命令?

port webserver kdb q-lang

2
推荐指数
1
解决办法
122
查看次数

kdb/q:使用hopen查询多个句柄

我希望能够一次查询几个句柄,其中表格具有相同的格式:

句柄:8000,8001,8003表:foo

想做类似的事情:

x:hopen `8000`8001`8003
x select from foo col1,col2
Run Code Online (Sandbox Code Playgroud)

所以我从每个句柄上的每个foo表中获取行.

有没有办法实现这个目标?

谢谢

handle kdb q-lang

2
推荐指数
1
解决办法
650
查看次数