R में ऑब्जेक्ट के लिए सारांश () और लोडिंग () के बीच अंतर क्या है?


11

उदाहरण कोड:

(pc.cr <- princomp(USArrests))  
summary(pc.cr)
loadings(pc.cr)  ## note that blank entries are small but not zero

मुझे प्रत्येक से अलग-अलग आउटपुट मिल रहे हैं, और मुझे यकीन नहीं है कि मैं समझता हूं कि अंतर क्या है।

यहाँ उत्पादन है:

> summary(pc.cr)
Importance of components:
                           Comp.1      Comp.2      Comp.3       Comp.4
Standard deviation     82.8908472 14.06956001 6.424204055 2.4578367034
Proportion of Variance  0.9655342  0.02781734 0.005799535 0.0008489079
Cumulative Proportion   0.9655342  0.99335156 0.999151092 1.0000000000


> loadings(pc.cr)  ## note that blank entries are small but not zero

...

               Comp.1 Comp.2 Comp.3 Comp.4
SS loadings      1.00   1.00   1.00   1.00
Proportion Var   0.25   0.25   0.25   0.25
Cumulative Var   0.25   0.50   0.75   1.00

पुनश्च: मैं सारांश (pc.cr) द्वारा बनाई गई तालिका तक कैसे पहुंच सकता हूं ?? (मैं इसे str में नहीं ढूँढ सकता।)


दूसरे प्रश्न के लिए, आपका मतलब है आइजन्वेक्टर या कंपोनेंट लोडिंग सारांश?
chl

हाय chl - मेरा मतलब है "सारांश (pc.cr)" से उत्पादन - किसी कारण से, मैं इसे नहीं पा सकता हूं। (सारांश जैसा कुछ कर (pc.cr) [[1]] मुझे मेज का केवल एक हिस्सा मिलेगा)
ताल गलि

# inappropriateपहली पंक्ति में आपकी टिप्पणी क्यों है ?
अमीबा

@amoeba - मुझे ईमानदारी से याद नहीं है। मैंने उसे हटा दिया। :)
ताल गलि

जवाबों:


4

पहला आउटपुट सही और सबसे उपयोगी है। loadings()अपनी वस्तु पर कॉल करना केवल एक सारांश देता है जहां एसएस हमेशा 1 के बराबर होता है, इसलिए% विचरण केवल एसएस लोडिंग है जिसे चर की संख्या से विभाजित किया गया है। यह केवल कारक विश्लेषण (जैसे factanal) का उपयोग करते समय समझ में आता है । मैं कभी भी इसका SVD-princomp आधारित विकल्प ( prcomp) का उपयोग नहीं करता , और मैं FactoMineR या ade4 पैकेज को प्राथमिकता देता हूं जो बहुत शक्तिशाली हैं!

आपके दूसरे प्रश्न के बारे में, summary()फ़ंक्शन केवल प्रत्येक घटक ( pc.cr$sdevआपके मामले में) के लिए एसडी लौटाता है , और तालिका के बाकी हिस्सों को बाद में गणना की जाती है ( printया showविधि के माध्यम से , मैंने विवरण में इसकी जांच नहीं की)।

> getS3method("summary","princomp")
function (object, loadings = FALSE, cutoff = 0.1, ...)
{
    object$cutoff <- cutoff
    object$print.loadings <- loadings
    class(object) <- "summary.princomp"
    object
}
<environment: namespace:stats>

princomp()स्वयं क्या करता है इसका उपयोग करके देखा जा सकता है getAnywhere("princomp.default")


+1 मैं भी FactoMineR का उपयोग करता हूं, लेकिन मुझे याद है कि जब मैंने एक बहुत बड़े डेटासेट पर पीसीए विधि की कोशिश की, तो मुझे कभी परिणाम नहीं मिला।
जॉर्ज डोंटास

@ gd047 यह मेरे लिए भी विफल रहा, हालांकि यह एक SVD पर आधारित है (बड़े डेटा सेट को संभालने के लिए अनुकूलित किया जा सकता है :)
chl
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.