Weka 中的字符串为标称值

String to nominal value in Weka

我有一个 ARFF 文件,其中有一列字符串类型的 32 位散列值。我正在尝试使用 Weka GUI 中的过滤器(select 所有然后过滤器 > 无监督 > StringToNominal)将它从字符串转换为标称值,但它似乎没有任何效果并且仍然是字符串类型。我做错了什么?

在将 ARFF 文件导入 Weka 之前,使用 Knime 中的 DJB2 哈希算法将字母数字哈希值转换为数字哈希值,最终解决了问题。然后我能够使用数字到标称过滤器将哈希转换为标称(过滤器>无监督> NumericToNominal)。

我留下这个答案以备将来参考。

您必须指定应用所选过滤器的列范围。在 Weka 界面上,在“选择”按钮旁边,单击过滤器名称,将出现一个配置 window。然后,在范围属性上,您可以指定将应用过滤器的列号。在这:
图像过滤器将应用于第六个属性 (UC)。这也在 weka 命令中观察到,在参数 -R.

遵循 select 过滤器的路径:Weka ->Filter->unsupervised->attributes->StringToNominal

  1. Select 过滤器选项卡下的属性。
  2. 单击过滤器名称,
  3. 将属性范围更改为选中属性的索引。
  4. 点击应用。

Selected attributes image