IDAX.IMPUTE_DATA - 插补缺失数据

使用此存储过程可将输入数据中的缺失值替换为替换值。

权限

此语句的授权标识所拥有的特权必须包括 IDAX_USER 角色。

语法

IDAX.IMPUTE_DATA(in parameter_string varchar(32672))

参数描述

parameter_string
必需的单字符串参数,其中包含以逗号分隔的 <parameter>=<value> 条目对。
数据类型:VARCHAR(32672)
以下列表显示参数值:
intable
必需。
输入表的名称。
数据类型:VARCHAR(256)
method
可选。
数据插补方法。
允许的值为“mean”、“median”、“freq”和“replace”。
如果未指定此参数,那么对于数字列,方法为“median”,而对于名义列,方法为“freq”。
如果两个值的频率相同,那么将会使用按字母顺序排列在前的值。
对于名义列,不可使用“mean”和“median”方法。
缺省值:无
数据类型:VARCHAR(ANY)
outtable
可选。
输出表,其中包含替换值。
如果未指定此参数,那么将在输入表中直接替换缺失值。
缺省值:无
数据类型:VARCHAR(256)
inColumn
可选。
输入表的列,必须替换其中的缺失值。
各个列之间以分号 (;) 分隔。
如果未指定此参数,那么将会考虑输入数据的所有列。
缺省值:无
数据类型:VARCHAR(128)
numericValue
可选。
方法为“replace”时用来替换的数字值。
缺省值:-1
数据类型:DOUBLE
nominalValue
可选。
方法为“replace”时用来替换的名义值。
缺省值:missing
数据类型:VARCHAR(ANY)
view
可选。
一个标志,指出输出对象是应该存储为视图 (true) 还是表 (false)。
缺省值:false
数据类型:BOOLEAN

返回的信息

INTEGER:数据已更新的属性数。

示例

CREATE TABLE MISS(id int, col float, attr float,data date, class VARCHAR(10));
INSERT INTO MISS VALUES (1,1.4,null,'2017-01-01','white');
INSERT INTO MISS VALUES (2,2.5,random(),null,null);
INSERT INTO MISS VALUES (3,null,random(),'2017-01-01','white');
INSERT INTO MISS VALUES (4,1.4,random(),null,'black');
CALL IDAX.IMPUTE_DATA('intable=MISS, outtable=NOMISS');
CALL IDAX.IMPUTE_DATA('intable=MISS, method=replace,numericValue=0,incolumn=col;attr,outtable=NOMISS2');