【问题标题】:Converting nominal attribute to numeric value using Weka使用 Weka 将名义属性转换为数值
【发布时间】:2016-10-08 11:47:19
【问题描述】:

假设名义属性是 Outlook,它包含三个值 Sunny、Overcast 和 Rainy。我想以数字形式转换 Outlook 属性的值,即 1、2、3(可以更改顺序)。我在 weka 中看到了一个过滤器nominaltobinary,但这将创建三列。我不想为每个值创建单独的列。我如何使用 Weka 做到这一点。

【问题讨论】:

  • 你为什么要这么做?
  • 因为如果输入变量包含非数字值,某些模型会出错。
  • 这是真的,但我认为这适用于字符串属性而不是名义属性。我认为名义上会在内部转换为数字。你用的是什么型号?
  • 但是当我在 Weka 中加载此类数据时,某些模型将被禁用
  • 你用的是什么型号?

标签: weka


【解决方案1】:

在 ARFF 中,如果你正在使用它,你可以有一个注释来指定“Outlook”属性的值是什么。

例如,您的 ARFF 可以在顶部包含此评论 -

%% Numeric values for the "Outlook" Attribute
%%   Sunny = 1
%%   Overcast = 2
%%   Rainy = 3
%%   Windy = 4

然后可以将属性定义为-

@attribute Outlook {1,2,3,4}

我认为在 UI 中没有办法做到这一点。但是您可以使用文本编辑器来编辑 ARFF 本身。

【讨论】:

    【解决方案2】:

    为此,您可以在无监督 ---> 属性下使用“RenameNominalValues”过滤器。

    然后在“selectedAttribute”下输入属性和

    在“valueReplacements”下类型为 Sunny:1,Overcast:2,Rainy:3,Windy:4

    【讨论】:

      猜你喜欢
      • 2018-08-15
      • 1970-01-01
      • 2015-01-23
      • 1970-01-01
      • 2014-09-18
      • 2016-05-01
      • 2014-12-21
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多