Filter 数字过滤器和缺失值(Weka)

Filter 数字过滤器和缺失值(Weka),filter,numeric,weka,missing-data,Filter,Numeric,Weka,Missing Data,我使用SMOTE对数据集进行过采样(受类不平衡的影响)。我的一些属性具有整数值,其他属性只有两个小数,但SMOTE创建了具有许多小数的新实例。所以为了解决这个问题,我想使用NumericCleaner过滤器并设置我想要的小数位数。这似乎是可行的,但我遇到了缺少值的问题。每个缺少的值都替换为0.0值,我需要使用数据集中缺少的值来评估我的模型。那么,我如何使用NumericCleaner(或其他允许对值进行舍入的过滤器)并保留丢失的值呢?这是一个非常有趣的问题。好的,下面是解决方案: 使用SMOTE

我使用SMOTE对数据集进行过采样(受类不平衡的影响)。我的一些属性具有整数值,其他属性只有两个小数,但SMOTE创建了具有许多小数的新实例。所以为了解决这个问题,我想使用NumericCleaner过滤器并设置我想要的小数位数。这似乎是可行的,但我遇到了缺少值的问题。每个缺少的值都替换为0.0值,我需要使用数据集中缺少的值来评估我的模型。那么,我如何使用NumericCleaner(或其他允许对值进行舍入的过滤器)并保留丢失的值呢?

这是一个非常有趣的问题。好的,下面是解决方案:

  • 使用SMOTE对少数组进行过采样(这会产生小数点,但缺少的值仍然是缺少的值)
  • 然后选择weka过滤器->无监督->属性->数值转换
  • 然后单击此过滤器并设置属性实例(其中有小数点特征),并在methodName中(而不是“abs”)放置“ceil”
    我希望这能解决问题。

    非常有趣的问题。好的,下面是解决方案:

  • 使用SMOTE对少数组进行过采样(这会产生小数点,但缺少的值仍然是缺少的值)
  • 然后选择weka过滤器->无监督->属性->数值转换
  • 然后单击此过滤器并设置属性实例(其中有小数点特征),并在methodName中(而不是“abs”)放置“ceil”
    我希望这能解决问题。

    如果我的答案解决了您的问题,请单击答案旁边的“复选”标记接受。谢谢。如果我的答案解决了你的问题,请点击答案旁边的“复选”标记接受。谢谢,太好了!这对于需要整数值的属性非常有效,但是我可以使用它来设置自定义的小数数吗?因为java.lang.math似乎没有一个函数来完成SMOTE的小数值所需的操作,所以没有在小数值后设置一定数量的数字的选项。太好了!这对于需要整数值的属性非常有效,但是我可以使用它来设置自定义的小数数吗?因为java.lang.math似乎没有一个函数来完成SMOTE的小数值所需的操作,所以没有在小数值之后设置一定数量的数字的选项。