एक numeric वैरिएबल को factor में बकेट करना
आपके पुराने मित्र Dan ने आपको 50 AAA रेटेड बॉन्ड्स की एक लिस्ट AAA_rank भेजी है। हर बॉन्ड के साथ 1–100 तक का एक नंबर है, जो बताता है कि वह बॉन्ड उनके हिसाब से कितना लाभदायक होगा (100 सबसे अधिक लाभदायक)। आप उनकी सुझाओं पर आगे विश्लेषण करना चाहते हैं, लेकिन पहले अगर बॉन्ड्स को उनकी रैंकिंग के आधार पर कुछ बकेट्स में बाँट दिया जाए तो अच्छा रहेगा। इससे आप कम लाभदायक से लेकर अधिक लाभदायक तक के समूह बना पाएँगे और विश्लेषण आसान होगा.
यह numeric वेक्टर से factor बनाने का बढ़िया उदाहरण है। इसे करने का सबसे आसान तरीका है cut() का इस्तेमाल। नीचे Dan की 1–100 रैंकिंग को 5 बराबर दूरी वाले समूहों में बाँटा गया है। ध्यान दें, factor लेवल्स में ( का मतलब है कि उसके पास लिखा नंबर उस समूह में शामिल नहीं है, जबकि ] का मतलब है कि वह नंबर समूह में शामिल है.
head(AAA_rank)
[1] 31 48 100 53 85 73
AAA_factor <- cut(x = AAA_rank, breaks = c(0, 20, 40, 60, 80, 100))
head(AAA_factor)
[1] (20,40] (40,60] (80,100] (40,60] (80,100] (60,80]
Levels: (0,20] (20,40] (40,60] (60,80] (80,100]
cut() फंक्शन में breaks = का उपयोग करके आप वे समूह निर्धारित कर सकते हैं जिनमें R आपके डेटा को बकेट करेगा!
यह अभ्यास पाठ्यक्रम का हिस्सा है
R for Finance परिचय
अभ्यास निर्देश
- 5 बकेट्स की जगह, क्या आप सिर्फ 4 बना सकते हैं?
breaks =में 0 से 100 तक का ऐसा वेक्टर दें जिसमें हर एलिमेंट 25 नंबर की दूरी पर हो। इसेAAA_factorको असाइन करें. - ये 4 बकेट्स बहुत वर्णनात्मक नहीं हैं।
levels()का उपयोग करके लेवल्स के नाम इसी क्रम में बदलें:"low","medium","high", और"very_high". - नए नामों वाला
AAA_factorप्रिंट करें. - अपने काम को visualize करने के लिए
AAA_factorका प्लॉट बनाइए!
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create 4 buckets for AAA_rank using cut()
AAA_factor <- cut(x = ___, breaks = ___)
# Rename the levels
# Print AAA_factor
# Plot AAA_factor
plot(___)