扩展此问题,
kdb+: replace null integer with 0
我有一个包含不同数据类型的大表,如float,int,timestamps,我该如何扩展呢
0^tbl
仅适用于某种类型的columsn。目前,如果我将它应用于完整的表格,我会收到类型错误,并且必须采用比手动逐列更智能的方式
答案 0 :(得分:3)
您可以使用基于每列类型的功能应用来执行此操作,如下所示:
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之间的列(即short,int,long,real和float)
希望这有帮助
乔纳森