使用weka PCA处理数据

时间:2014-05-22 18:59:00

标签: java weka pca

我想使用weka的PCA为我的数据集做PCA。 我在网上看到的java代码是:

  1. PrincipalComponents pca = new PrincipalComponents();
  2. pca.setMaximumAttributeNames(300);
  3. pca.setInputFormat(数据);
  4. Instances newData = Filter.useFilter(Data,pca);
  5. 我导入了导入weka.attributeSelection.PrincipalComponents并在代码中导入weka.filters.Filter,但是eclipse总是显示在第三行中,需要将pca强制转换为Filter。在我将pca转换为Filter之后,它仍然是错误的。第四行也显示错误。我想知道为现有数据集执行pca的正确代码是什么?

    谢谢!

1 个答案:

答案 0 :(得分:2)

您遇到的问题是weka API中有两个名为PrincipalComponents的类:

weka.attributeSelection.PrincipalComponentsweka.filters.unsupervised.attribute.PrincipalComponents

后者是一种Filter,但是您要导入前者,而不是。

只需更改您的import语句,您的代码就可以运行。