मैंने अभी एक विधि जोड़ा है जो सारांशित करता है (या अधिक सटीक, tidies) "ridgelm"
मेरे broom पैकेज में ऑब्जेक्ट्स। यह दो एस 3 जेनेरिकों का रूप लेता है: tidy
और glance
। आप इसे devtools::install_github("dgrtwo/broom")
के साथ इंस्टॉल कर सकते हैं (हालांकि आपको पहले devtools
इंस्टॉल करना होगा)।
library(broom)
td <- tidy(fit)
head(td)
## lambda GCV term estimate
## 1 0.001 0.1240 GNP 23.02
## 2 0.002 0.1217 GNP 21.27
## 3 0.003 0.1205 GNP 19.88
## 4 0.004 0.1199 GNP 18.75
## 5 0.005 0.1196 GNP 17.80
## 6 0.006 0.1196 GNP 16.99
जबकि glance
:
library(MASS)
names(longley)[1] <- "y"
fit <- lm.ridge(y ~ ., longley, lambda = seq(0.001, .05, .001))
tidy
समारोह एक डेटा फ्रेम कि लैम्ब्डा के प्रत्येक संयोजन और अनुमानित अवधि से पता चलता प्रदान करता है:
उदाहरण के लिए, के एक रिज प्रतिगमन को सेट
g <- glance(fit)
g
## kHKB kLW lambdaGCV
## 1 0.006837 0.05267 0.006
: समारोह एक-पंक्ति सारांश, विभिन्न तरीकों से लैम्ब्डा की विशेष रूप से विकल्प बनाता है
यह उपयोगी है क्योंकि यह आसान साजिश और डेटा अपने आप को नहीं बल्कि मास के षड्यंत्रकारियों पर भरोसा से पता लगाने के लिए बनाता है: इन तरीकों पर अधिक जानकारी के लिए
library(ggplot2)
ggplot(td, aes(lambda, estimate, color = term)) + geom_line()
# plot of GCV versus lambda
ggplot(td, aes(lambda, GCV)) + geom_line() +
geom_vline(xintercept = g$lambdaGCV, col = "red", lty = 2)
, ?ridgelm_tidiers
देखें, या सामान्य रूप से tidy
और glance
विधियों के बारे में अधिक जानकारी के लिए पैकेज के विगेट्स देखें।
नज़र करने के बजाय आप builtin समारोह का उपयोग कर सकते नहीं मिलता 'का चयन करें' - यह एक ही काम करता है। Ggplot फ़ंक्शन नियमित plot.lmridge के समान काम करता है (लेकिन निश्चित रूप से अधिक pritty दिखता है)। –
@MarcinKosinski: 'select' एक ही तरीके से काम नहीं करता है क्योंकि यह * उन्हें वापस करने के बजाय चयनित मूल्यों को मुद्रित करता है (इसलिए उन्हें सहेजने, उन्हें निकालने, उन्हें गठबंधन करने, या उन्हें ग्राफ में जोड़ने का कोई तरीका नहीं है, उदाहरण के लिए)। 'plot.ridgelm' एक समान ग्राफ उत्पन्न करता है, लेकिन यह ध्यान देने योग्य है कि यह एक किंवदंती, या रंग चुनने का एक तरीका नहीं है। (असल में 'plot.ridgelm'' '' '' matplot' के साथ पास नहीं होता है, आपके पास इसे अनुकूलित करने की सीमित क्षमता है)। –
ठीक है मुझे यह मिल गया। धन्यवाद :) –