आर प्रोग्रामिंग - शुरुआती गाइड टू आर प्रोग्रामिंग लैंग्वेज



R Programming का यह ब्लॉग आपको R से परिचित कराता है और आपको R प्रोग्रामिंग की विभिन्न मूलभूत अवधारणाओं को उदाहरणों के साथ विस्तार से समझने में मदद करता है।

आर सबसे लोकप्रिय एनालिटिक्स टूल में से एक है। लेकिन एनालिटिक्स के लिए इस्तेमाल होने के अलावा, R एक प्रोग्रामिंग लैंग्वेज भी है।आईटी उद्योग में इसकी वृद्धि के साथ, कुशल या के लिए एक बढ़ती मांग है दोनों के रूप में आर की समझ के साथ, एक डेटा एनालिटिक्स टूल और एक प्रोग्रामिंग भाषा।इस ब्लॉग में, मैं आर प्रोग्रामिंग के विभिन्न मूल सिद्धांतों को समझने में आपकी मदद करूंगा। हमारे में पी स्पष्ट है ब्लॉग ,हमने चर्चा की है कि हमें Analytics की आवश्यकता क्यों है, Business Analytics क्या है, क्यों और कौन R का उपयोग करता है।

इस ब्लॉग में, हम निम्नलिखित क्रम में R प्रोग्रामिंग की मुख्य अवधारणाओं को समझेंगे:





  1. चर
  2. जानकारी का प्रकार
  3. डेटा ऑपरेटर्स
  4. सशर्त बयान
  5. लूप्स
  6. कार्य

आप आर प्रोग्रामिंग भाषा की वेबिनार रिकॉर्डिंग के माध्यम से जा सकते हैं जहां हमारे प्रशिक्षक ने उदाहरणों के साथ विस्तृत तरीके से विषयों को समझाया है जो आपको आर प्रोग्रामिंग को बेहतर ढंग से समझने में मदद करेंगे।

आर प्रोग्रामिंग फॉर बिगिनर्स | आर प्रोग्रामिंग लैंग्वेज ट्यूटोरियल | Edureka



तो चलिए आगे बढ़ते हैं और R Programming - Variables की पहली अवधारणा को देखते हैं।

आर प्रोग्रामिंग: चर

चर कुछ भी नहीं हैं, लेकिन एक स्मृति स्थान के लिए एक नाम है जिसमें एक मूल्य है। R में एक वैरिएबल न्यूमेरिक वैल्यू, कॉम्प्लेक्स वैल्यूज़, वर्ड्स, मैट्रिसेस और यहां तक ​​कि एक टेबल भी स्टोर कर सकता है। हैरानी की बात है, है ना?

चर - आर प्रोग्रामिंग - एडुरका

अंजीर: सृष्टिचर का



उपरोक्त छवि हमें दिखाती है कि चर कैसे बनाए जाते हैं और उन्हें विभिन्न मेमोरी ब्लॉकों में कैसे संग्रहीत किया जाता है। आर में, हमें जावा, सी, सी ++, आदि जैसी अन्य प्रोग्रामिंग भाषाओं के विपरीत, इसका उपयोग करने से पहले हमें एक चर घोषित करना होगा।

आइए हम आगे बढ़ते हैं और यह समझने की कोशिश करते हैं कि डेटा प्रकार क्या है और विभिन्न डेटा प्रकार R में समर्थित हैं।

प्रोग्रामिंग: डेटा प्रकार

आर में, एक चर को किसी भी डेटा प्रकार के रूप में घोषित नहीं किया जाता है, बल्कि इसे आर को सौंपी गई वस्तु का डेटा प्रकार मिलता है। तो R को एक गतिशील रूप से टाइप की गई भाषा कहा जाता है, जिसका अर्थ है कि हम एक प्रोग्राम में उपयोग करते समय बार-बार एक ही चर का डेटा प्रकार बदल सकते हैं।

डेटा प्रकार निर्दिष्ट करता है कि किस प्रकार के मूल्य में एक चर है और किस प्रकार का गणितीय, संबंधपरक या तार्किक संचालन त्रुटि के कारण के बिना उस पर लागू किया जा सकता है। आर में कई डेटा प्रकार हैं, हालांकि नीचे सबसे अधिक उपयोग किए जाने वाले हैं:

आइए अब हम इनमें से प्रत्येक डेटा प्रकार पर व्यक्तिगत रूप से चर्चा करते हैं, जो वैक्टर से शुरू होता है।

वैक्टर

वैक्टर सबसे बुनियादी आर डेटा ऑब्जेक्ट हैं और छह प्रकार के परमाणु वैक्टर हैं। नीचे छह परमाणु वैक्टर हैं:

तार्किक : इसका उपयोग तार्किक मूल्य को संग्रहीत करने के लिए किया जाता है सच या असत्य

न्यूमेरिक : इसका उपयोग वास्तविक संख्या सहित सकारात्मक और नकारात्मक दोनों संख्याओं को संग्रहीत करने के लिए किया जाता है।

उदा: 25, 7.1145, 96547

पूर्ण करनेवाला : यह सभी पूर्णांक मानों को यानि सभी धनात्मक और ऋणात्मक पूर्ण संख्याओं को रखता है।

जैसे: 45.479, -856.479, 0

जटिल : ये फॉर्म x + yi के हैं, जहाँ x और y न्यूमेरिक हैं और मैं -1 के वर्गमूल को दर्शाता है।

जैसे: ४ + ३ आई

चरित्र : इसका उपयोग या तो एक वर्ण, वर्णों के समूह (शब्द) या शब्दों के समूह को एक साथ संग्रहीत करने के लिए किया जाता है। अक्षरों को एकल उद्धरण या दोहरे उद्धरण में परिभाषित किया जा सकता है।

जैसे: 'एडुर्का', 'आर फन टू लर्न'।

सामान्य तौर पर, एक वेक्टर को परिभाषित किया जाता है और निम्नलिखित तरीके से आरंभ किया जाता है:

Vtr = c(2, 5, 11 , 24) या Vtr<- c(2, 5, 11 , 24)

आइए हम आगे बढ़ते हैं और अन्य डेटा प्रकारों को आर में समझते हैं।

सूची

सूचियाँ काफी हद तक वैक्टर के समान हैं, लेकिन सूचियाँ R वस्तुएँ हैं जिनमें विभिन्न प्रकार के तत्व शामिल हो सकते हैं जैसे & minus number, strings, vectors और इसके अंदर एक अन्य सूची।

जैसे:

Vtr<- c('Hello', 'Hi','How are you doing') mylist <- list(Vtr, 22.5, 14965, TRUE) mylist 

आउटपुट:

[[१]] [१] 'हैलो ’' हाय’ ’कैसे क्या आप '[[2]] [1] 22.5 [[3]] [1] 14965 कर रहे हैं [[४]] [१] सही

आव्यूह

मैट्रिक्स R ऑब्जेक्ट है जिसमें तत्वों को दो-आयामी आयताकार लेआउट में व्यवस्थित किया जाता है।

R में एक मैट्रिक्स बनाने के लिए मूल वाक्यविन्यास & minus; है

 मैट्रिक्स (डेटा, nrow, ncol, byrow, dimnames) 

कहा पे:

  • डेटा इनपुट वेक्टर है जो मैट्रिक्स के डेटा तत्व बन जाते हैं।
  • nrow बनाई जाने वाली पंक्तियों की संख्या है।
  • ncol बनाए जाने वाले कॉलम की संख्या है।
  • बायरो एक तार्किक सुराग है। यदि TRUE है, तो इनपुट वेक्टर तत्वों को पंक्ति द्वारा व्यवस्थित किया जाता है।
  • मंद नाम पंक्तियों और स्तंभों को सौंपा गया नाम है।

उदाहरण:

मायमेट्रिक्स<- matrix(c(1:25), nrow = 5, ncol = 5, byrow = TRUE) Mymatrix 

आउटपुट:

[, १] [, २] [, ३] [, ४] [, ५] [१,] १ २ ३ ४ ५ [२,] ६ 9 10 ९ १० [३,] ११ १२ १३ १४ १५ [४] ] १६ १ 20 १ 18 १ ९ २० [५, २१ २२ २३ २४ २५

ARRAY

R में Arrays डेटा ऑब्जेक्ट्स हैं जिनका उपयोग डेटा को दो से अधिक आयामों में संग्रहीत करने के लिए किया जा सकता है। यह वैक्टर को इनपुट के रूप में लेता है और में मूल्यों का उपयोग करता है नहीं न सरणी बनाने के लिए पैरामीटर।

आर में एक सरणी बनाने के लिए मूल वाक्यविन्यास & minus; है

 सरणी (डेटा, मंद, मंदनाम) 

कहा पे:

  • डेटा इनपुट वेक्टर है जो कि सरणी के डेटा तत्व बन जाते हैं।
  • नहीं न सरणी का आयाम है, जहां आप पंक्तियों की संख्या, कॉलम और मैट्रिसेस की संख्या को उल्लिखित आयामों द्वारा बनाते हैं।
  • मंद नाम पंक्तियों और स्तंभों को सौंपा गया नाम है।

उदाहरण:

मायार्रे<- array( c(1:16), dim=(4,4,2)) Myarray 

आउटपुट:

, , एक [, १] [, २] [, ३] [, ४] [१,] १ ५ ९ १३ [२,] २ ६ १० १४ [३, ३ ३ ११ १५ [४,] ४ 16 १२ १६ ,, २ [, १] [, २] [, ३] [, ४] [१,] १ ५ ९ १३ [२,] २ ६ १० १४ [३, ३ ३ ११ १५ [४,] ४ 16 १२ १६

डेटा ढांचा

डेटा फ़्रेम एक तालिका या द्वि-आयामी सरणी जैसी संरचना है जिसमें प्रत्येक स्तंभ में एक चर का मान होता है और प्रत्येक पंक्ति में मानों का एक सेट होता हैके लियेप्रत्येक स्तंभ। नीचे एक डेटा फ़्रेम की कुछ विशेषताएं बताई गई हैं, जिन पर हमें हर बार काम करने की ज़रूरत है:

  • कॉलम नाम गैर-रिक्त होना चाहिए।
  • प्रत्येक कॉलम में समान डेटा आइटम होना चाहिए।
  • डेटा फ़्रेम में संग्रहीत डेटा संख्यात्मक, कारक या वर्ण प्रकार का हो सकता है।
  • पंक्ति नाम अद्वितीय होना चाहिए।

उदाहरण:

emp_id = c (100: 104) emp_name = c ('जॉन', 'हेनरी', 'एडम', 'रॉन', 'गैरी') विभाग = c ('बिक्री', 'वित्त', 'विपणन', 'HR ',' R & D ') emp.data<- data.frame(emp_id, emp_name, dept) emp.data 

आउटपुट:

emp_id emp_name विभाग 1 100 जॉन सेल्स 2 101 हेनरी फाइनेंस 3 102 एडम मार्केटिंग 4 103 Ron HR 5 104 गैरी आर एंड डी

इसलिए अब जब हम R के मूल डेटा प्रकारों को समझ गए हैं, तो यह समय है जब हम डेटा ऑपरेटर्स की अवधारणाओं को समझकर आर में गहरी डुबकी लगाते हैं।

आर प्रोग्रामिंग: डेटा ऑपरेटर्स

आर में मुख्य रूप से 4 डेटा ऑपरेटर हैं, उन्हें नीचे देखा गया है:

विंडोज़ 10 पर php 7 कैसे स्थापित करें

अंकगणितीय आपरेटर : ये ऑपरेटर बुनियादी अंकगणितीय संचालन जैसे कि जोड़, घटाव, गुणा, आदि करने में हमारी मदद करते हैं।

निम्नलिखित उदाहरण पर विचार करें:

num1 = 15 num2 = 20 num3 = 0 #addition num3 = num1 + num2 num3 #substraction num3 = num1 - num2 num3 #multiplication num3 = num1 * num2 num3 #division num3 = num1 / num2 num3 #modulus num3 = num1% num2%। # एक्पॉन्सर num1 = 5 num2 = 3 num3 = num1 ^ num2 num3 #floor डिवीजन num3 = num1% /% num2 num3

आउटपुट:

[१] ३५ [पंद्रह [१] ३०० [१] ०. 1५ [१] १५ [१] १२५ [ग्यारह

संबंधपरक संकारक : ये ऑपरेटर हमें परिचालनात्मक संचालन करने में मदद करते हैं जैसे कि एक चर अधिक से अधिक, दूसरे चर की तुलना में कम या अधिक है। एक रिलेशनल ऑपरेशन का आउटपुट हमेशा एक तार्किक मूल्य होता है।

निम्नलिखित उदाहरणों पर विचार करें:

num1 = 15 num2 = 20 # संख्या को num3 = (num1 == num2) num3 #not के बराबर num3 = (num1! = num2) num3 की अपेक्षा num3 #lesser = (num1 num2) num3 के बराबर संख्या (3 num1) = 20 num3 = (num1 = num2) num3

आउटपुट:

[१] FALSE [१] सही [१] सही [१] FALSE [१] सही [१] FALSE

असाइनमेंट ऑपरेटर: इन ऑपरेटरों का उपयोग आर में चर के मानों को असाइन करने के लिए किया जाता है। असाइनमेंट को या तो असाइनमेंट ऑपरेटर का उपयोग करके किया जा सकता है()<-) या बराबर ऑपरेटर (=)। चर का मान दो तरह से असाइन किया जा सकता है, बाएं असाइनमेंट और राइट असाइनमेंट।

तार्किकसंचालक: ये ऑपरेटर दो संस्थाओं की तुलना करते हैं और आमतौर पर बूलियन (तार्किक) मानों जैसे ’और ',‘ या' के साथ उपयोग किए जाते हैंतथा'नहीं'।


प्रोग्रामिंग: सशर्त विवरण

  1. यदि कथन: यदि कथन प्रवाह के भाग के रूप में एकल अभिव्यक्ति का मूल्यांकन करने में आपकी सहायता करता है। इस मूल्यांकन को करने के लिए, आपको केवल मूल्यांकन किए जाने वाले अभिव्यक्ति के बाद इफ कीवर्ड लिखना होगा। नीचे दिए गए प्रवाह आरेख से यह पता चलेगा कि यदि कथन कोड के प्रवाह को कैसे नियंत्रित करता है: निम्न उदाहरण पर विचार करें:
num1 = 10 num2 = 20 यदि (num1)<=num2){ print('Num1 is less or equal to Num2') 

आउटपुट:

[१] 'Num1 कम या बराबर है Num2'
  • और यदि कथन: एल्स यदि स्टेटमेंट, इफ स्टेटमेंट द्वारा बनाई गई फ्लो की शाखाओं को विस्तारित करने में आपकी मदद करता है और आपको फ्लो की नई शाखाएँ बनाकर कई स्थितियों का मूल्यांकन करने का अवसर प्रदान करता है। नीचे दिए गए प्रवाह से आपको इस बात का अंदाजा हो जाएगा कि यदि स्टेटमेंट कोड के प्रवाह को कैसे और कैसे बनाए तो:

    निम्नलिखित उदाहरण पर विचार करें:

    Num1 = 5 Num2 = 20 अगर (Num1 Num2) {प्रिंट ('Num2, Num1 से कम है')} तो (अगर (Num1 == Num2) {प्रिंट ('Num1 और Num2 समान हैं')}

    आउटपुट:

    [१] 'न्यूम १, न्यूम २ से कम है'

  • अन्य विवरण: अन्य सभी अभिव्यक्तियों की जाँच करने और अमान्य पाए जाने पर अन्य कथन का उपयोग किया जाता है। यह अंतिम कथन होगा जो अगर - शाखा की तुलना में अगर - के भाग के रूप में निष्पादित होता है। नीचे प्रवाह आपको एक बेहतर विचार देगा कि कैसे कोड के प्रवाह को बदल देता है:

निम्नलिखित उदाहरण पर विचार करें:

Num1 = 5 Num2 = 20 अगर (Num1 Num2) {प्रिंट ('Num2, Num1 से कम है')} और प्रिंट ('Num1 और Num2 समान हैं')}

आउटपुट:

[१] 'न्यूम १ और न्यू २ समान हैं'

आर प्रोग्रामिंग: लूप्स

एक लूप स्टेटमेंट हमें कई बार स्टेटमेंट या स्टेटमेंट ऑफ स्टेट को निष्पादित करने की अनुमति देता है। R में मुख्य रूप से 3 प्रकार के लूप हैं:

  1. बार-बार लूप : यह एक कथन या कथनों के समूह को दोहराता है जबकि दी गई स्थिति TRUE है। दोहराए गए लूप एक निकास नियंत्रित लूप का सबसे अच्छा उदाहरण है जहां कोड को पहले निष्पादित किया जाता है और फिर यह निर्धारित करने के लिए स्थिति की जांच की जाती है कि नियंत्रण लूप के अंदर होना चाहिए या इससे बाहर निकलना चाहिए। नीचे एक लूप लूप में नियंत्रण का प्रवाह है:
    आइए हम नीचे दिए गए उदाहरण को देखें कि हम योग को 100 से अधिक होने तक n संख्याओं को जोड़ने के लिए दोहराए गए लूप का उपयोग कैसे कर सकते हैं:

    x = 2 रिपीट {x = x ^ 2 प्रिंट (x) यदि (x> 100) {ब्रेक}

    आउटपुट:

    [१] ४ [१] १६ [१] २५६
  2. घुमाव के दौरान : मैंt किसी कथन या कथन को दोहराने में मदद करता है जबकि दी गई स्थिति TRUE है। जबकि लूप, जब दोहराए गए लूप की तुलना में थोड़ा अलग होता है, तो यह एक एंट्री नियंत्रित लूप का एक उदाहरण है, जहां स्थिति को पहले जांचा जाता है और केवल तभी जब स्थिति सही पाई जाती है, तो कोड निष्पादित करने के लिए नियंत्रण लूप के अंदर दिया जाता है। । नीचे लूप में नियंत्रण का प्रवाह है:
    आइए पहले 10 नंबरों के लिए वर्गों के योग को जोड़ने के लिए नीचे दिए गए उदाहरण को देखें और समझें कि जबकि लूप बेहतर काम करता है:

    num = 1 sumn = 0 जबकि (num<=11){ sumn =(sumn+ (num^2) num = num+1 print(sumn) } 


    आउटपुट:

    [ग्यारह [पंद्रह [१] १४ [१] ३० [१] ५५ [१] ९ १ [१] १४० [१] २०४ [१] २ ]५ [१] ३85५ [१] ५०६
  3. पाश के लिए : इसका उपयोग किसी निश्चित संख्या के लिए एक कथन या समूह को दोहराने के लिए किया जाता है। दोहराए जाने और लूप के विपरीत, लूप के लिए उन स्थितियों में उपयोग किया जाता है जहां हम कोड की पहले से निष्पादित की जाने वाली संख्या के बारे में जानते हैं। यह उस लूप के समान है जहां पहले स्थिति की जांच की जाती है और उसके बाद ही कोड लिखा जाता है। अब लूप के नियंत्रण के प्रवाह को देखें:

आइए अब एक उदाहरण देखें, जहां हम पहले 10 नंबरों को प्रिंट करने के लिए लूप का उपयोग करेंगे:

(x 1:10 में) {प्रिंट (x)}

आउटपुट:

[ग्यारह [१] २ [१] ३ [१] ४ [पंद्रह [१] ६ [१]] [१]] [१] ९ [१] १०

प्रोग्रामिंग: कार्य

एक फ़ंक्शन संगठित, पुन: प्रयोज्य कोड का एक ब्लॉक है जो एकल, संबंधित कार्रवाई करने के लिए उपयोग किया जाता है। R में मुख्य रूप से दो प्रकार के कार्य होते हैं:

पूर्वनिर्धारित कार्य : ये उन कार्यों में बनाए जाते हैं जिनका उपयोग उपयोगकर्ता अपने काम करने के लिए कर सकते हैं सहजताआर। जैसे: मेएन() एक्स) , एसयू() एक्स) , sqrटी ( एक्स ), टौपर() एक्स ), आदि।

उपयोगकर्ता परिभाषित कार्य: ये फ़ंक्शन उपयोगकर्ता द्वारा उपयोगकर्ता की विशिष्ट आवश्यकता को पूरा करने के लिए बनाए जाते हैं। नीचे एक फ़ंक्शन बनाने के लिए सिंटैक्स हैआर:

 दुर्गंध  tion_name  <– समारोह (arg_1, arg_2, और hellip){{ // फंक्शन बॉडी }

वर्गों के योग को बनाने के लिए एक सरल कार्य के निम्नलिखित उदाहरण पर विचार करेंका2 नंबर:

sum_of_square<- function(x,y) { x^2 + y^2 } sum_of_sqares(3,4) 
आउटपुट: [१] २५

मुझे उम्मीद है कि आपको यह R प्रोग्रामिंग ब्लॉग पढने में मज़ा आया होगा। हमने इस ट्यूटोरियल में R के सभी बेसिक्स को कवर किया है, इसलिए आप अभी से अभ्यास शुरू कर सकते हैं। इस आर प्रोग्रामिंग ब्लॉग के बाद, मैं आर के लिए एनालिटिक्स पर अधिक ब्लॉगों के साथ आ रहा हूं, इसलिए बने रहें।

अब जब आप R की मूल बातें समझ गए हैं, तो देखें 250,000 से अधिक संतुष्ट शिक्षार्थियों के एक नेटवर्क के साथ एक विश्वसनीय ऑनलाइन शिक्षण कंपनी, एडुरेका द्वारा, दुनिया भर में फैली हुई है। R प्रशिक्षण के साथ Edureka का डेटा एनालिटिक्स आपको R प्रोग्रामिंग, डेटा हेरफेर, खोजपूर्ण डेटा विश्लेषण, डेटा विज़ुअलाइज़ेशन, डेटा खनन, प्रतिगमन, सेंटीमेंट विश्लेषण और रिटेल, सोशल मीडिया पर वास्तविक जीवन के अध्ययन के अध्ययन के लिए RStudio का उपयोग करने में विशेषज्ञता प्राप्त करने में मदद करेगा।

क्या आप हमसे कोई प्रश्न पूछना चाहते हैं? कृपया इस 'आर प्रोग्रामिंग' ब्लॉग के टिप्पणी अनुभाग में उल्लेख करें और हम जल्द से जल्द आपके पास वापस आ जाएंगे।