我不确定weka GUI是否有直接的选择。但是,您可以通过命令行实现相同的功能
java weka.classifiers.meta.FilteredClassifier -F weka.filters.unsupervised.attribute.RemoveType -W weka.classifiers.trees.RandomForest -t G:\pub-resampled-0.5.arff -T G:\test.csv.arff -p 1 -distribution > G:\out.txt
在上例中,第一个属性是一个标识符(字符串)。 RemoveType过滤器将在构建模型时删除所有字符串字段。但是,您仍然可以通过将参数传递给-p来请求weka将该标识符作为输出的一部分(预测)。在我的情况下,第一个属性(partner_id)是标识符,因此它会与预测一起列在输出中。 ( - 分配选项是输出所有类别标签的预测分数)。你可以得到更多的细节来自http://weka.wikispaces.com/Instance+ID
=== Predictions on test data ===
inst# actual predicted error distribution (partner_id)
1 1:? 2:0 0,*1 (8i7t3)
2 1:? 2:0 0,*1 (8i7u1)
3 1:? 2:0 0,*1 (8i7um)
4 1:? 2:0 0.1,*0.9 (8i7ux)
5 1:? 2:0 0,*1 (8i7va)
6 1:? 2:0 0,*1 (8i7vb)
7 1:? 2:0 0,*1 (8i7vf)
希望对您有所帮助..
谢谢!知道我可以输出一个属性真的很有帮助。所以实际上我的标识符是数字的,所以我在数字上运行removeType。我的标识符刚刚消失,当我尝试输出属性时,它不会回来。是因为它是数字吗?字符串属性不会消失? –
@JinaHuh您是否表示必须将其中一个属性作为预测分数的一部分?为什么不在你的arff文件中将该标识符标记为字符串并尝试? – naresh
如何在arff中将标识符标记为字符串? –