为什么我得到“ weka.attributeSelection.PrincipalComponents:没有属性!”在Java中运行WEKA PCA时?

时间:2019-05-14 13:48:11

标签: java weka pca

我必须对4维数据集(加上cla​​ss属性)进行可视化处理。为此,我想在整个数据集上运行PCA。由于我不必对数据集进行任何机器学习,因此无需将其拆分为训练和测试。以下是我尝试编写的代码:

PrincipalComponents pc = new PrincipalComponents();
pc.setMaximumAttributeNames(2);
System.out.println(dataset.numAttributes()); // this prints 5
pc.buildEvaluator(dataset); //this row raises the exception
weka.core.Instances datasetR2 = pc.transformedData(dataset);
System.out.println(datasetR2.numAttributes());

命令“ buildEvaluator”引发以下异常:

  

线程“ main”中的异常weka.core.WekaException:   weka.attributeSelection.PrincipalComponents:没有属性!在   weka.core.Capabilities.test(Capabilities.java:1201)在   weka.core.Capabilities.test(Capabilities.java:1138)在   weka.core.Capabilities.testWithFail(Capabilities.java:1468)在   weka.attributeSelection.PrincipalComponents.buildAttributeConstructor(PrincipalComponents.java:525)     在   weka.attributeSelection.PrincipalComponents.buildEvaluator(PrincipalComponents.java:466)     在   clustering.sperimentation.GoldStandardTest.clusterPrint(GoldStandardTest.java:154)     在orchestration.Orchestrator.main(Orchestrator.java:22)

我希望datasetR2应该包含转换为2D数据集的初始数据集。

0 个答案:

没有答案