【问题标题】:? value handling in Weka? Weka 中的值处理
【发布时间】:2021-12-11 10:34:19
【问题描述】:

如何替换“?” Weka 中的值。

我有一个数据集。列中有标称值,也有一些值“?”。我试图用 Weka 中的 replacemissingvalues 过滤器替换缺失值。此过滤器替换了那些没有任何值(如空白单元格)但无法替换“?”的单元格。如何在 Weka 中替换 ?

带有? 符号的值的屏幕截图。

谢谢。

【问题讨论】:

    标签: machine-learning weka missing-data


    【解决方案1】:

    unofficial Weka 包missing-values-imputation 允许您使用各种方案替换和注入缺失值。

    在您的情况下,您应该能够使用 Regex 注入方案并将 .*\?.* 作为正则表达式(并打开 updateHeader),用前导或尾随空格替换问号(添加到发布 2021.10.28)。

    这是使用Regex 注入的MissingValuesInjection 过滤器的完整命令行:

    weka.filters.unsupervised.attribute.MissingValuesInjection -algorithm "weka.filters.unsupervised.attribute.missingvaluesinjection.Regex -expression .*\\?.* -update-header -R first-last"
    

    【讨论】:

      【解决方案2】:

      '?' 有点棘手值,尤其是问号“?”之前或之后的任何空格要么 '? ' 不会被 Weka 识别为缺失值。不过你可以试试

      • 在属性级别,使用选项(当您右键单击时)Replace values with... 可以替换“?”使用空白值,先应用缺失值过滤器或直接替换“?”使用您申请填充缺失值的常数。
        有时该值可以包含空格“?”要么 '? ',所以相应地替换。

      • 使用过滤器Replace with missing value 替换“?”与空白单元格。在使用过滤器ReplaceMissingValues 过滤器之前使用此过滤器。但是,据我所见,您可以随机替换为缺失值。不确定是否有特定值,例如“?”、“?”、“? ' 可以替换为缺失值(空白单元格)

      最好的方法是选择第一个,this you tube link 提供了 3 种不同的方法来处理缺失值,并展示了如何访问 Replace values with... 的方式

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2014-07-23
        • 2015-07-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-08
        相关资源
        最近更新 更多