如何在Weka Explorer UI中结合两个已有属性创建带比较逻辑的新属性
Weka Explorer 自定义比较属性操作指南
你需要组合3个无监督属性过滤器完成需求,全程在Explorer UI内操作,步骤如下:
步骤1:生成比较结果的数值标识
- 导入数据集后切换到Filter面板,点击
Choose按钮 - 选择过滤器:
weka.filters.unsupervised.attribute.AddExpression - 点击过滤器名称旁的文本框打开参数配置页:
Name字段填写新属性名resultExpression字段填写判断逻辑:ifelse(profit > cost, 1, 0)- 确认参数后点击
OK,再点击Apply,此时数据集会新增取值为1/0的result数值属性
步骤2:将数值结果转为标称型
- 再次点击
Choose,选择过滤器:weka.filters.unsupervised.attribute.NumericToNominal - 打开参数配置页,
attributeIndices字段指定为刚生成的result属性(若result是最后一列可直接填last) - 点击
OK后Apply,result会转为标称类型,取值为1和0
步骤3:替换标称值为gain/loss
- 点击
Choose,选择过滤器:weka.filters.unsupervised.attribute.RenameNominalValues - 打开参数配置页:
attributeName选择resultvalueReplacements字段填写映射规则:1:gain,0:loss
- 点击
OK后Apply,即可得到符合需求的result属性
注意:如果你的
profit和cost不是数值类型,需要先通过weka.filters.unsupervised.attribute.NominalToNumeric过滤器转换为数值类型,再执行上述操作。
内容的提问来源于stack exchange,提问作者WILLIAM
相关产品推荐
相关产品推荐

