在weka中将所有负属性值设置为零

时间:2017-05-13 13:46:03

标签: weka data-science

我有一个使用AddExpression过滤器添加的属性,现在我想更改其值,以便将所有负值设置为零。我尝试使用MathExpression过滤器,如下所示:

MathExpression -E "ifelse(A > 0, A, 0)" -V -R 17

17是weka Preprocess / Attributes中的属性索引。但在应用它之后,我仍然可以看到我的属性的最小值是-5,而不是预期的0。我究竟做错了什么?

如果它发生任何变化,我在应用此过滤器之前删除了一些属性,因此属性索引已更改

1 个答案:

答案 0 :(得分:0)

这个问题似乎是某种错误 - 它有时会起作用,但有时它并不起作用。我不知道重现它的确切方法。但是,我发现了一种解决方法,如果没有很多负值,那就可行。

如果单击“编辑”按钮,则可以按要修改的属性对行进行排序,并手动将负值更改为零。如果要保留原始行顺序,请在排序之前使用AddID过滤器添加ID属性。完成modyfing值后,按ID对数据进行排序以恢复原始订单。