如何应用PCA但保留原始属性?

时间:2018-07-03 00:30:18

标签: weka pca

我正在使用Weka Explorer将PCA应用于我的数据。有4列:R,G,B(代表像素中的颜色值)和id(标称,代表像素的类别)。我希望PCA生成一个结合了R,G,B中信息的单个变量(称为V)。然后,我想对V进行一些分析(聚类)并可视化带有wrt id的结果。

如果我加载数据并在“预处理”选项卡中选择PrincipalComponent,它将应用PCA,但会应用到所有属性。因此,“ id”被并入,产生废话结果。它还用产生的主要成分代替了我的原始数据。相反,我想保留我的原始属性(尤其是“ id”),并使主成分成为其他属性。在Weka Explorer中有可能吗?

1 个答案:

答案 0 :(得分:0)

这可以满足您的要求,但仅保留“ ID”列,而其他不保留。

“选择属性”选项卡中还有第二个PCA功能。可以在“预处理”标签中用作过滤器。

为此,请使用名为AttributeSelection的“监督属性过滤器”,并将其配置为类似于以下屏幕截图(标记1,2,3)。我使用了一个“带有供应商的CPU” arff数据文件,它实际上并不包含唯一的“ ID”属性,但在第一列(5)中却包含一个类似的字符串属性“ vendor”。选择“供应商” / ID作为新的类属性(6)。在此之前,我必须删除第八个属性“类”(4)-也许此步骤对您而言是可选的。现在只剩下7个属性。单击“应用”(7)。

Screenshot 1

默认情况下,PCA使用前5个主成分来确定新的转换值。

请参阅第二个屏幕截图。在进行PCA计算之后,列“供应商”(1)已移至最后一个位置,但在5个新列(2)的PCA计算中未使用。在列列表(1)中可以看到基于5个主要成分(“ A”参数(3))的转换后的值

Screenshot 2