如何将复合谓词编码为PMML?

时间:2018-03-13 23:03:20

标签: pmml

我是pmml的新手并且正在寻找一个关于如何为以下逻辑创建派生字段的示例?

if var1 < 100 and var2 <= -1 then binvalue '--'
else if var1 >= 100 and var2 <= -1 then bin value = '+-'
else if var1 >= 100 and var2 > -1 then binvalue = '++'
else if var1 < 100 and var2 var2 >-1 then binvalue = '-+'

我有我认为的大纲,但也可能是错的。即使只是第一个垃圾桶,任何帮助都会很棒。艾米,我正朝着正确的方向前进?对不起这样的菜鸟问题。

<DerivedField>
    <Discretize field="myvar"  optype="categorical" datatype="string"   >
        <DiscretizeBin binValue="--">
        </DiscretizeBin> 
        <DiscretizeBin binValue="+-">
        </DiscretizeBin>  
        <DiscretizeBin binValue="++">
        </DiscretizeBin>  
        <DiscretizeBin binValue="-+">
        </DiscretizeBin>   
    </Discretize>
</DerivedField>

1 个答案:

答案 0 :(得分:0)

Discretize元素在单个连续特征上运行。您的要求是对一对不支持的连续要素(var1var2)应用离散化。

你可以考虑的事情:

  • 独立地区分两个要素,然后使用{{1}将它们的组合(&#34; +&#34;&#34; - &#34;符号?的两个矩阵)映射到所需的输出} element。
  • 使用通用MapValues元素(使用ApplyiflessThan内置函数)表达离散化逻辑。