1

我有一个数组,代表这种表:

网格类型

我试图通过 PCA 得到一个结果,其中 Elements(e1,e2,e3) 彼此相似,哪些 Concerns(c1,c2,c3) 彼此相似。为了实现这一点,我使用了 matplotlib 和 numpy:

var_grid = np.array(matrixAlternatives)
#Create the PCA node and train it
pcan = mdp.nodes.PCANode(output_dim=2, svd=True)
pcar = pcan.execute(var_grid)

fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(pcar[:, 0], pcar[:, 1], 'bo')
ax.plot(pcan.v[:,0], pcan.v[:,1], 'ro') #eigenvectors: pcan.v

但是我得到了这样的结果: 我的结果

如您所见,关注点彼此过于接近,因此无法进行分析。

矩阵:

pcar
[[-54.84 -14.21],
 [-10.35  22.58],
 [ 65.19  -8.37]]

eigenvectors:
[[-0.05  0.96],
 [-0.54 -0.25],
 [ 0.84 -0.11]]

当我使用 Idiogrid 工具进行相同的分析时,结果要好得多:

白痴

Elemnts 与我的 PCA 处于相同位置(只是镜像),但关注点差异太大。他们的价值观:

con_1 0.19 0.98,con_2 0.98 -0.19,con_3 -1.00 0.00

ele_1 0.87 -0.53,ele_2 0.22 0.80,ele_3 -1.09 -0.27

你觉得我做错了什么?

4

0 回答 0