BigQuant使用文档

缺失值处理

由small_q创建,最终由small_q 被浏览 27 用户

在使用“输入特征(DAI SQL)”提取数据的时候,可能会遇到缺失值的问题,缺失值的出现可能是因为原始数据表中有缺失值,也有可能是表达式计算的过程中产生了缺失值

对于缺失值,我们主要有两种处理方式,缺失值删除,或者缺失值填充

1. 缺失值删除

要想将缺失值剔除,只需要在“输入特征(DAI SQL)”模块中,将“表达式-移除空值”勾选即可

值得注意的是,使用这种方法,只要一行数据中有一个字段是空值,那么这一行就会被剔除

因此,当有多个特征被提取的时候,只要有一个特征由于运算逻辑错误导致整个字段都是空值的话,那么所有行都是包含空值的,这样的话数据提取出来就会是一个一行也没有的空数据集

2. 缺失值填充

如果想要对于缺失值进行填充,我们可以在表达式特征中,使用IF三元表达式进行填充,格式为IF(字段 IS NULL, 缺失填充值, 字段)

这个思路也比较简单,其实就是新建一个字段,如果原始字段中有缺失值,那么新字段就是我指定的填充值,如果原始字段中没有缺失值,那么新字段就用原始字段的值即可。

下面我们看这个例子,我们想计算5日移动平均并命名为哑变量_ma5(这里我们只看000001.SZ一支票),前4个值就是缺失值,接着我们用三元表达式,将缺失值填充为0,并且将填充后的字段命名为ma5,从数据提取结果可以看出,前4行本来为Null值,现在被我们填充为了0

除此之外,我们还可以对缺失值填充为其他数字,这个要结合具体情景来判断填充为什么数值合适

标签

数据处理
{link}