पीसीए बाइपोलॉट पर चार अक्ष क्या हैं?


18

जब आप PCA विश्लेषण के लिए एक द्विपद का निर्माण करते हैं, तो आपके पास x- अक्ष पर मुख्य घटक PC1 स्कोर होता है और y- अक्ष पर PC2 स्कोर होता है। लेकिन स्क्रीन के दाईं और शीर्ष पर अन्य दो कुल्हाड़ी क्या हैं?


1
हम कैसे जान सकते हैं कि आप किस स्क्रीन की बात कर रहे हैं?
फेयरमाइल्स

@ttnphns का यहाँ
दू

जवाबों:


12

क्या आपका मतलब है, उदाहरण के लिए, इस भूखंड में जो निम्न कमांड देता है?

biplot(prcomp(USArrests, scale = TRUE))

biplot USA गिरफ्तार

यदि हाँ, तो शीर्ष और दाएं कुल्हाड़ियों का उपयोग भूखंड में लाल तीरों (चरों को दर्शाने वाले बिंदु) की व्याख्या करने के लिए किया जाता है।

यदि आप जानते हैं कि प्रमुख घटक विश्लेषण कैसे काम करता है, और आप आर कोड पढ़ सकते हैं, तो नीचे दिए गए कोड से पता चलता है कि अंतिम प्लॉटिंग से पहले prcomp()शुरू के परिणामों से कैसे व्यवहार किया जाता biplot.prcomp()है biplot.default()। जब आप के साथ साजिश करते हैं biplot(), तो इन दो कार्यों को पृष्ठभूमि में कहा जाता है , और निम्नलिखित संशोधित कोड अंश से है biplot.prcomp()

x<-prcomp(USArrests, scale=TRUE)
choices = 1L:2L
scale = 1
pc.biplot = FALSE
scores<-x$x
lam <- x$sdev[choices]
n <- NROW(scores)
lam <- lam * sqrt(n)
lam <- lam^scale
yy<-t(t(x$rotation[, choices]) * lam)
xx<-t(t(scores[, choices])/lam)
biplot(xx,yy)

कुछ ही समय में, ऊपर दिए गए उदाहरण में, चर लोडिंग ( x$rotation) के मैट्रिक्स को मूल घटकों के मानक विचलन ( x$sdev) बार टिप्पणियों की संख्या के वर्गमूल से जोड़ा जाता है। यह शीर्ष और दाएं कुल्हाड़ियों के लिए पैमाना तय करता है कि किस भूखंड पर क्या देखा गया है।

वैरिएबल लोडिंग को स्केल करने के लिए अन्य तरीके भी हैं। ये आर पैकेज शाकाहारी द्वारा उदाहरण के लिए पेश किए जाते हैं।


5
+1। मैंने आपके उत्तर में आंकड़ा डालने के लिए स्वतंत्रता ली।
अमीबा का कहना है कि

इसके अलावा, मुझे लगता है कि यह भविष्य के संदर्भों के लिए बहुत उपयोगी होगा, यदि आप अपने जवाब में जोड़ सकते हैं कि पीसी स्कोर (बाईं ओर और नीचे तल में) इकाई योग-वर्गों में स्केल किए गए हैं: वे "कच्चे" नहीं हैं पीसी स्कोर।
अमीबा का कहना है कि मोनिका

0.8biplot.default

1
इसके अलावा आगे भी, इसे बाद में भी देखें: पीसीए बाइपोलॉट पर तीर की स्थिति
अमीबा का कहना है कि मोनिका

11

मेरे पास द्विपद के लिए एक बेहतर दृश्य है। कृपया निम्नलिखित आंकड़ा देखें।

प्रयोग में, मैं 3 डी बिंदुओं को 2 डी (नकली डेटा सेट) में मैप करने की कोशिश कर रहा हूं।

2d में बिप्लॉट को समझने की चाल को 3 डी में एक ही चीज़ देखने के लिए सही कोण मिल रहा है। सभी डेटा बिंदुओं को गिना जाता है, आप मानचित्रण को स्पष्ट रूप से देख सकते हैं।

यहाँ छवि विवरण दर्ज करें

यहाँ परिणामों को पुन: पेश करने के लिए कोड है।

require(rgl)
set.seed(0)

feature1=round(rnorm(50)*10+20)
feature2=round(rnorm(50)*10+30)
feature3=round(runif(50)*feature1)

d=data.frame(feature1,feature2,feature3)

head(d)

plot(feature1,feature2)
plot(feature2,feature3)
plot(feature1,feature3)

plot3d(d$feature1, d$feature2, d$feature3, type = 'n')
points3d(d$feature1, d$feature2, d$feature3, color = 'red', size = 10)
shift <- matrix(c(-2, 2, 0), 12, 3, byrow = TRUE)
text3d(d+shift,texts=1:50)
grid3d(c("x", "y", "z"))

pr.out=prcomp(d,scale.=T)
biplot(pr.out)
grid()

2
+1। हालांकि, ध्यान दें कि आपके घुमाए गए 3 डी आंकड़े में डॉट्स के बादल में विचरण संरक्षित है (क्षैतिज प्रक्षेपण, यानी पीसी 1, में ऊर्ध्वाधर एक से बड़ा विचरण है, अर्थात पीसी 2) जबकि लाल तीर सभी की इकाई लंबाई (3 डी में) है। यह biplotR में कमांड द्वारा निर्मित बिप्लॉट में मामला नहीं है और दाईं ओर आपके चित्र में पुन: प्रस्तुत किया गया है: वहां डॉट्स के क्लाउड को मानकीकृत किया गया है, लेकिन तीर में भिन्नता के अनुरूप लंबाई है।
अमीबा का कहना है कि मोनिका

@ बाम्बोआ अच्छा बिंदु। मैं सिर्फ तीर को मैन्युअल रूप से खींचता हूं और तीर की लंबाई भी भूल गया है, इसके विशिष्ट अर्थ हैं।
हाइताओ डू

मुझे लगता है कि आपका मैनुअल 3 डी / 2 डी "बिप्लॉट" इस बात से अधिक मेल खाता है कि फ़ंक्शन तर्क के biplotसाथ क्या पैदा करता scale=0है।
अमीबा का कहना है कि मोनिका
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.