本文介绍了kdb +:将空整数替换为0的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
请考虑下表:
myTable:
a b
-------
1
2
3 10
4 50
5 30
如何用零替换b
的空白单元格?因此结果将是:
How do I replace the empty cells of b
with a zero? So the result would be:
a b
-------
1 0
2 0
3 10
4 50
5 30
现在我正在做
myTable: update b:{$[x~0Ni;0;x]}'b from myTable
但是我想知道是否有更好/更简便的解决方案.
But I am wondering whether there is a better/easier solution for doing this.
推荐答案
使用填充运算符(^
)
示例表:
q) tbl:flip`a`b!(2;0N)#10?0N 0N 0N,til 3
a b
---
0 2
1 1
1 1
1
1
在所有具有0的列中填充空值:
Fill nulls in all columns with 0:
q)0^tbl
a b
---
0 2
1 1
1 1
0 1
1 0
仅在具有0的选择性列中填充空值:
Fill nulls only in selective columns with 0:
q)update 0^b from tbl
a b
---
0 2
1 1
1 1
1
1 0
这篇关于kdb +:将空整数替换为0的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!