KDB+/Q:如何选择字典的所有项(键+值),其中各个值符合条件?

Bra*_*rad 3 kdb

如何根据字典中的值过滤字典中的项目。例如,给定以下字典:

990.5| 0
900.5| 0
600.5| 300
600  | -300
Run Code Online (Sandbox Code Playgroud)

如何过滤掉其中值 = 0 的所有实例。此后的结果是:

600.5| 300
600  | -300
Run Code Online (Sandbox Code Playgroud)

谢谢

Mat*_*ees 5

这是一种方法。

q)d: 990.5 900.5 600.5 600 ! 0 0 300 -300
q)k ! d k: where d <> 0
600.5| 300
600  | -300
Run Code Online (Sandbox Code Playgroud)


小智 5

where 关键字也可用于实现此目的而无需赋值

q)d:990.5 900.5 600.5 600!0 0 300 -300
q)where[d<>0]#d
Run Code Online (Sandbox Code Playgroud)