निम्नलिखित पीसीए biplot पर विचार करें:
library(mvtnorm)
set.seed(1)
x <- rmvnorm(2000, rep(0, 6), diag(c(5, rep(1,5))))
x <- scale(x, center=T, scale=F)
pc <- princomp(x)
biplot(pc)
वहाँ लाल तीरों का एक गुच्छा लगाया जाता है, उनका क्या मतलब है? मुझे पता था कि "वर 1" के साथ लेबल किया गया पहला तीर डेटा-सेट की सबसे अलग दिशा की ओर इशारा करता है (यदि हम उन्हें 2000 डेटा बिंदु मानते हैं, तो प्रत्येक का आकार 6 का वेक्टर होता है)। मैं भी कहीं से पढ़ता हूं, सबसे अलग दिशा 1 ईजन वेक्टर की दिशा होनी चाहिए।
हालांकि, आर। में द्विपद के कोड में पढ़ना। तीर के बारे में पंक्ति है:
if(var.axes)
arrows(0, 0, y[,1L] * 0.8, y[,2L] * 0.8, col = col[2L],
y
वास्तव में लोडिंग मैट्रिक्स कहां है, जो कि आइजन्वेक्टर मैट्रिक्स है। तो ऐसा लगता है कि 1 तीर वास्तव में से इशारा कर रहा (0, 0)
है (y[1, 1], y[1, 2])
। मैं समझता हूं कि हम एक 2D विमान पर एक उच्च आयामी तीर की साजिश करने की कोशिश कर रहे हैं। इसलिए हम y[1, ]
वेक्टर के पहले और दूसरे तत्व को ले रहे हैं । हालाँकि जो मुझे समझ में नहीं आता है वह है:
नहीं चाहिए 1 eigenvector दिशा के y[, 1]
बजाय वेक्टर द्वारा निरूपित किया जाना चाहिए y[1, ]
? (फिर से, यहाँ y
eigenvector मैट्रिक्स है, जिसे PCA द्वारा या के eigendecomposition द्वारा प्राप्त किया गया है t(x) %*% x
।) यानी eigenvectors कॉलम वैक्टर होना चाहिए, न कि क्षैतिज वैक्टर।
भले ही हम उन्हें 2 डी प्लेन पर प्लॉट कर रहे हैं, फिर भी हमें 1 दिशा को (0, 0)
इंगित करने से आकर्षित करना चाहिए (y[1, 1], y[2, 1])
?