Java 实例中没有一个类的ARFF
因此,我一直在使用本教程中的示例“TextCategorizationTest.java” 我有一个目录和两个文件夹:“neg”和“pos”。这两个文件夹表示应该在我的ARRF中的类。问题是,当尝试创建ARFF文件时,实例不包含“pos”的属性类,但它们确实包含属性类“neg”的属性类 这是我的ARFF文件: 如您所见,“pos”实例以这种格式显示: @资料 {1 1,3 1,24 1,27 1,29 1,37 ...} “neg”实例以以下格式显示: {0负,11,2 1,3 1,6 1…}Java 实例中没有一个类的ARFF,java,weka,Java,Weka,因此,我一直在使用本教程中的示例“TextCategorizationTest.java” 我有一个目录和两个文件夹:“neg”和“pos”。这两个文件夹表示应该在我的ARRF中的类。问题是,当尝试创建ARFF文件时,实例不包含“pos”的属性类,但它们确实包含属性类“neg”的属性类 这是我的ARFF文件: 如您所见,“pos”实例以这种格式显示: @资料 {1 1,3 1,24 1,27 1,29 1,37 ...} “neg”实例以以下格式显示: {0负,11,2 1,3 1,6 1…}
我能做些什么来修复这个ARFF?我会接受来自weka代码或weka GUI的解决方案 您的ARFF文件完全正常,无需更改 您的ARFF文件是稀疏格式,这意味着值为0的属性将被忽略。对于期望许多属性为0的情况,例如字数,此格式更紧凑 格式为:
{index value,index value,index value, ...}
但正如我所说,值为0的属性将被忽略,因此这里只列出了非0属性的索引
名义属性是使用它们的值索引(不要与属性索引混淆)存储的,类属性定义(索引为0的第一个属性)的顺序是{pos,neg}
,因此“pos”的值索引为0,“neg”的值索引为“1”。这意味着所有“pos”条目都将丢失,因为“pos”(索引为0)是默认值
数据的某些行的前几列是稀疏格式的(发布时):
这相当于密集格式中的以下内容:
@data
{0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0, ...}
{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,1, ...}
...
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0, ...}
首先你说“pos”有索引1,然后你说pos有索引0。标称属性使用其索引存储,因此“neg”具有索引0,“pos”具有索引“1”。这意味着所有“pos”条目都会丢失,因为“pos”(索引为0)是默认值。你是对的,我写它时没有集中注意力,把它搞混了。我修好了。pos=0,neg=1。我还刚刚意识到我使用了“索引”上下文相关。我希望我也能澄清这一点。谢谢你的回答!
@data
{0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0, ...}
{0,1,0,0,1,1,0,0,1,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,1,0,1,0,0,1, ...}
...
{1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0, ...}