我剛剛完成了14個變量的PCA分析,我已經選擇將其分解爲2個分量。繪製散點圖中的PCA輸出,同時根據標籤着色python matplotlib
pca = PCA(n_components=2)
pca.fit(z)
a = pca.fit_transform(z)
輸出這給出了在形式:
[[ -3.84514275e+00 -1.19829226e-01]
[ -4.78476227e+00 -1.35986090e-01]
[ -2.26702900e+00 -1.19665853e+00]
[ -5.01021616e+00 2.76005130e+00]
[ -5.57580326e+00 -2.00656680e+00]
[ -5.08184415e+00 -3.68721491e+00]
[ -3.41505366e+00 -7.61184868e-01]
[ -4.92439159e+00 -1.82147509e+00]
...
[ -3.34931300e+00 7.57884906e-01]]
欲執行以下操作:
情節上與PC1(X)爲所述第一一散點圖每個觀測每個數組中的值和PC2(y)是第二個值。
根據來自初始PCA前數據的相應標籤類型(即A =紅色,B =藍色,C =綠色等)爲每個觀察着色。
標籤SELECTED(不是全部)與從最初的預PCA數據觀察的名稱(例如約翰,彼得,薩利等)
觀察任何幫助是極大的讚賞任何/所有這些問題。
值得注意我試圖通過做散點圖:
plt.scatter(a[1], a[2])
plt.show()
但顯然這並不能作爲我的輸出沒有用逗號分隔的工作,而且只積2分。無法幫助我的頭,因此會讚賞SO的投入。
編輯:
John, A, var1, var2, var3, ..., var14
Peter, A, var1, var2, var3, ..., var14
Sally, B, var1, var2, var3, ..., var14
Cath, C, var1, var2, var3, ..., var14
Jim, A, var1, var2, var3, ..., var14
類似這樣的東西之後我:在形式上
數據集
我們展示具有代表性的數據集,用標籤 –
你的陣列是二維的,所以你需要用兩個指數指數吧。第一列爲'a [:,0]',第二列爲'a [:,1]'。除此之外,真正的問題還不清楚。 – ImportanceOfBeingErnest
謝謝歐內斯特,那解決了問題1.關於2和3的任何想法? – mystifier