1
我在Python中使用sklearn來做主成分分析。使用PCA計算原始數據集和轉換後的數據之間的數據丟失
我的意圖之一是生成一個4分量模型,另一個模型8,並使用inverse_transform與原始數據進行比較。
的代碼是這樣的:
pca4 = PCA(n_components=4)
pca4.fit(parkinsonData)
scores4=pca.transform(parkinsonData)
reconstruct4=pca.inverse_transform(scores4)
要計算原始數據和重建我做的區別:
differenceMatrix=parkinsonData-reconstruct4
現在我有分歧,但我想計算數據丟失了尊重原始數據集。要做到這一點,我想計算原始數據集的每個元素與重建的元素之間的差異的平均值2。
在上一條語句中,我計算原始數據集和重構數據集中每個元素之間的差異,但現在我必須計算功效。我不知道該怎麼做,因爲當我使用時:
power=differenceMatrix**
我得到一個錯誤:這個矩陣不是方形的。
爲了解決這個我用
np.power(differenceMatrix,differenceMatrix)
它的工作原理,但有些元素是NAN。我明白這是由於缺少方形。
任何人都知道如何解決這個問題,並使用PCA計算原始數據集和變換數據之間的數據丟失?
謝謝。
這是解決方案。 謝謝@acidtobi – Maik