【问题标题】:Split attribute labels with delimiter for processing使用分隔符拆分属性标签以进行处理
【发布时间】:2018-12-21 18:48:13
【问题描述】:

我在 Weka 3.8 中打开了一个 csv 文件并选择了一个属性/列(下图)。标签由竖线字符分隔。应该有 23 个不同的标签,但 Weka 显示 914。因此,Weka 无法可视化太多的值。动作是一个标签,冒险是另一个标签,等等。基本上每行可以有多个标签。

对于处理(例如分类),如何分离这些值以便 Weka 可以读取它们?

这个问题类似于this。但问题询问日期属性(例如“dd-MM-yyyy HH:mm”)。这询问一个字符分隔的值(例如“动作|冒险|戏剧”)

编辑: 数据取自kaggle

【问题讨论】:

    标签: weka kaggle


    【解决方案1】:

    啊,我也遇到过这个问题。

    首先,确保 Genres 属性被识别为 String 类型。如果您只使用 GUI,请转到 Open File... 并打开文件(我认为它是一个 .dat 文件。如果您已将其重命名为 .csv,请点击显示“调用选项对话框”的复选框)。

    在 Generic Object Editor 窗口中,输入 Genres 属性的索引(此处为 last)。

    这样做会导致属性在 GUI 中看起来像这样。

    现在选择名为 StringToWordVector (weka.filters.unsupervised.attribute.StringToWordVector) 的过滤器。现在在编辑器窗口下,找到 Tokenizer 条目,单击其字段,然后在 delimeters 下删除默认值并添加竖线字符。您也可以选择编辑属性前缀字段。

    点击应用并查找添加为 numeric 属性的所需类型,对于原始字符串中不存在该类型的情况设置为 0,否则设置为 1。

    StringToWordVector 是一个非常有用的过滤器,文档中还有更多内容:http://weka.sourceforge.net/doc.dev/weka/filters/unsupervised/attribute/StringToWordVector.html

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-27
    相关资源
    最近更新 更多