扩大这个问题,
kdb+: replace null integer with 0
我有一个大表,其中包含浮点、int、时间戳等不同的数据类型,我如何展开这个表?
0^tbl
只应用于某一类型的列。目前,如果我将它应用到完整的表中,我会得到一个类型错误,并且必须执行一个比逐个列手动执行更明智的方法。
发布于 2017-09-29 07:50:45
您可以根据每一列的类型使用函数式应用程序来完成此操作,如下所示:
q)t:([] a:9?`3;b:9#0N;c:9#0Nf;d:9#0Ni)
q)@[t;where (type each flip t) within 5 9h;0^]
a b c d
---------
kdj 0 0 0
eeg 0 0 0
nce 0 0 0
jog 0 0 0
..
这是通过将0^应用于类型介于5到9之间的列(即短、int、长、实和浮点)。
希望这能有所帮助
乔纳森
https://stackoverflow.com/questions/46483518
复制相似问题