जब आप PCA विश्लेषण के लिए एक द्विपद का निर्माण करते हैं, तो आपके पास x- अक्ष पर मुख्य घटक PC1 स्कोर होता है और y- अक्ष पर PC2 स्कोर होता है। लेकिन स्क्रीन के दाईं और शीर्ष पर अन्य दो कुल्हाड़ी क्या हैं?
जब आप PCA विश्लेषण के लिए एक द्विपद का निर्माण करते हैं, तो आपके पास x- अक्ष पर मुख्य घटक PC1 स्कोर होता है और y- अक्ष पर PC2 स्कोर होता है। लेकिन स्क्रीन के दाईं और शीर्ष पर अन्य दो कुल्हाड़ी क्या हैं?
जवाबों:
क्या आपका मतलब है, उदाहरण के लिए, इस भूखंड में जो निम्न कमांड देता है?
biplot(prcomp(USArrests, scale = TRUE))
यदि हाँ, तो शीर्ष और दाएं कुल्हाड़ियों का उपयोग भूखंड में लाल तीरों (चरों को दर्शाने वाले बिंदु) की व्याख्या करने के लिए किया जाता है।
यदि आप जानते हैं कि प्रमुख घटक विश्लेषण कैसे काम करता है, और आप आर कोड पढ़ सकते हैं, तो नीचे दिए गए कोड से पता चलता है कि अंतिम प्लॉटिंग से पहले 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
) बार टिप्पणियों की संख्या के वर्गमूल से जोड़ा जाता है। यह शीर्ष और दाएं कुल्हाड़ियों के लिए पैमाना तय करता है कि किस भूखंड पर क्या देखा गया है।
वैरिएबल लोडिंग को स्केल करने के लिए अन्य तरीके भी हैं। ये आर पैकेज शाकाहारी द्वारा उदाहरण के लिए पेश किए जाते हैं।
मेरे पास द्विपद के लिए एक बेहतर दृश्य है। कृपया निम्नलिखित आंकड़ा देखें।
प्रयोग में, मैं 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()
biplot
R में कमांड द्वारा निर्मित बिप्लॉट में मामला नहीं है और दाईं ओर आपके चित्र में पुन: प्रस्तुत किया गया है: वहां डॉट्स के क्लाउड को मानकीकृत किया गया है, लेकिन तीर में भिन्नता के अनुरूप लंबाई है।
biplot
साथ क्या पैदा करता scale=0
है।