You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在kdb中移除混合列表中的通用空值(::)

移除Q语言混合列表中的通用空值(::)

针对你遇到的问题,以下两种方法可以有效移除列表中的通用空值:

方法1:通过精确匹配过滤

利用~(精确相等)结合each逐个判断元素是否为通用空值,再用where保留非空值元素:

sample where not each sample~::

方法2:通过类型判断过滤

通用空值的类型码为101,可以通过type函数识别并过滤:

sample where 101 <> each type sample

为什么except无效?

在Q语言中,except和in操作依赖=进行相等性判断,但通用空值::与自身用=比较会返回0b(假),导致:: in sample无法识别列表中的通用空值,因此sample except ::无法生效。而~是精确匹配运算符,能正确识别元素是否为通用空值。

内容的提问来源于stack exchange,提问作者CleanSock

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 08:12:07