R Languageआर भाषा से शुरुआत करना


टिप्पणियों

स्टैक ओवरफ्लो पर आर डॉक्स का संपादन

प्रलेखन बनाते समय सामान्य नियमों के लिए प्रलेखन दिशानिर्देश देखें।

R की कुछ विशेषताएं जो अन्य भाषा के आप्रवासियों को असामान्य लग सकती हैं

  • अन्य भाषाओं के विपरीत R में चर प्रकार की आवश्यकता नहीं है।
  • यदि आवश्यक हो तो एक ही चर को अलग-अलग समय पर अलग-अलग डेटा प्रकार सौंपे जा सकते हैं।
  • परमाणु वैक्टर और सूचियों का अनुक्रमण 1 से शुरू होता है, 0 से नहीं।
  • आर arrays (और arrays के विशेष मामले) में एक dim विशेषता है जो उन्हें आर के "परमाणु वैक्टर" से अलग करती है, जिसमें कोई विशेषता नहीं है।
  • R में एक सूची आपको एक क्रम में एक नाम (यानी, सूची का नाम) के तहत विभिन्न वस्तुओं को इकट्ठा करने की अनुमति देती है। ये ऑब्जेक्ट मैट्रिसेस , वैक्टर , डेटा फ्रेम , यहां तक कि अन्य सूचियां आदि हो सकते हैं, यह भी आवश्यक नहीं है कि ये ऑब्जेक्ट किसी भी तरह से एक-दूसरे से संबंधित हों।
  • पुनर्चक्रण
  • लापता मूल्य

सहायता ले रहा है

आप फ़ंक्शन help() या का उपयोग कर सकते हैं ? दस्तावेज़ों तक पहुँचने के लिए और आर में मदद के लिए खोज। और भी सामान्य खोजों के लिए, आप help.search() या का उपयोग कर सकते हैं ??

#For help on the help function of R
help()

#For help on the paste function
help(paste)    #OR
help("paste")  #OR
?paste         #OR
?"paste"
 

अतिरिक्त जानकारी के लिए https://www.r-project.org/help.html पर जाएं

नमस्ते दुनिया!

"Hello World!"
 

साथ ही, स्ट्रिंग को कैसे, कब, क्यों और कैसे प्रिंट करना है, इसकी विस्तृत चर्चा देखें

आर स्थापित करना

आप RStudio स्थापित करने की इच्छा कर सकते हैं जब आपने R स्थापित किया है। RStudio R के लिए एक विकास वातावरण है जो कई प्रोग्रामिंग कार्यों को सरल करता है।

केवल Windows:

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

विंडोज के लिए

  1. सीआरएएन वेबसाइट पर जाएं, विंडोज के लिए डाउनलोड आर पर क्लिक करें और आर के नवीनतम संस्करण को डाउनलोड करें।
  2. इंस्टॉलर फ़ाइल को राइट-क्लिक करें और व्यवस्थापक के रूप में चलाएँ।
  3. स्थापना के लिए परिचालन भाषा का चयन करें।
  4. स्थापना के लिए निर्देशों का पालन करें।

OSX / macOS के लिए

वैकल्पिक 1

(0. सुनिश्चित XQuartz स्थापित है)

  1. CRAN वेबसाइट पर जाएं और R का नवीनतम संस्करण डाउनलोड करें।
  2. डिस्क छवि खोलें और इंस्टॉलर चलाएं।
  3. स्थापना के लिए निर्देशों का पालन करें।

यह R और R-MacGUI दोनों को स्थापित करेगा। यह R.app के रूप में GUI को / Applications / Folder में डाल देगा जहाँ यह या तो डबल-क्लिक किया जा सकता है या Doc पर खींचा जा सकता है। जब एक नया संस्करण जारी किया जाता है, तो (पुनः)-स्थापना की प्रक्रिया R.app को अधिलेखित कर देगी लेकिन R के पूर्व प्रमुख संस्करणों को बनाए रखा जाएगा। वास्तविक R कोड /Library/Frameworks/R.Framework/Versions/ निर्देशिका में होगा। RStudio के भीतर R का उपयोग करना भी संभव है और एक ही R कोड का उपयोग एक अलग GUI के साथ किया जाएगा।

वैकल्पिक 2

  1. Https://brew.sh/ के निर्देशों का पालन करके होमब्रे (मैकओएस के लिए लापता पैकेज मैनेजर) स्थापित करें
  2. brew install R

दूसरी विधि को चुनने वालों को पता होना चाहिए कि मैक फोर्क का अनुरक्षक इसके खिलाफ सलाह देता है, और आर-एसआईजी-मैक मेलिंग सूची पर कठिनाइयों के बारे में सवालों के जवाब नहीं देगा।

डेबियन, उबंटू और डेरिवेटिव के लिए

आप आर apt-get वर्ट के माध्यम से अपने डिस्ट्रो के अनुरूप आर का संस्करण प्राप्त कर सकते apt-get । हालाँकि, यह संस्करण अक्सर CRAN पर उपलब्ध सबसे हालिया संस्करण से काफी पीछे होगा। आप CRAN को अपनी मान्यता प्राप्त "स्रोतों" की सूची में जोड़ सकते हैं।

sudo apt-get install r-base
 

आप CRAN से सीधे अपने स्रोतों की सूची में CRAN जोड़कर एक और हालिया संस्करण प्राप्त कर सकते हैं। अधिक जानकारी के लिए CRAN से निर्देशों का पालन करें। विशेष रूप से इसे भी निष्पादित करने की आवश्यकता पर ध्यान दें ताकि आप install.packages() उपयोग कर सकें। लिनक्स पैकेज आमतौर पर स्रोत फ़ाइलों के रूप में वितरित किए जाते हैं और संकलन की आवश्यकता होती है:

sudo apt-get install r-base-dev
 

रेड हैट और फेडोरा के लिए

sudo dnf install R
 

आर्कलिनक्स के लिए

आर सीधे Extra पैकेज रेपो में उपलब्ध है।

sudo pacman -S r

Archlinux के तहत R का उपयोग करने के बारे में अधिक जानकारी ArchWiki R पेज पर देखी जा सकती है।

इंटरएक्टिव मोड और आर स्क्रिप्ट

इंटरैक्टिव मोड

आर का उपयोग करने का सबसे बुनियादी तरीका इंटरैक्टिव मोड है। आप कमांड टाइप करते हैं और तुरंत R से परिणाम प्राप्त करते हैं।

कैलकुलेटर के रूप में R का उपयोग करना

अपने ऑपरेटिंग सिस्टम के कमांड प्रॉम्प्ट पर R टाइप करके या विंडोज पर RGui को निष्पादित करके R शुरू करें। नीचे आप लिनक्स पर एक इंटरैक्टिव आर सत्र का स्क्रीनशॉट देख सकते हैं:

एक लिनक्स टर्मिनल का स्क्रीनिंग आर निष्पादित

यह विंडोज पर RGui है, विंडोज के तहत R के लिए सबसे बुनियादी काम का माहौल है: विंडोज पर एक RGui टर्मिनल का स्क्रीनशॉट

> संकेत के बाद, अभिव्यक्तियों को टाइप किया जा सकता है। एक बार अभिव्यक्ति टाइप करने के बाद, परिणाम R. द्वारा दिखाया जाता है। ऊपर स्क्रीनशॉट में, R को कैलकुलेटर के रूप में उपयोग किया जाता है: प्रकार

1+1
 

तुरंत परिणाम देखने के लिए, 2 । प्रमुख [1] इंगित करता है कि R एक वेक्टर लौटाता है। इस मामले में, वेक्टर में केवल एक संख्या (2) होती है।

पहला कथानक

आर का उपयोग भूखंडों को उत्पन्न करने के लिए किया जा सकता है। निम्न उदाहरण डेटा सेट PlantGrowth का उपयोग करता है, जो R के साथ एक उदाहरण डेटा सेट के रूप में आता है

R प्रॉम्प्ट में निम्नलिखित सभी पंक्तियों को लिखें, जो ## शुरू नहीं होती हैं। ## साथ शुरू होने वाली रेखाएं परिणाम को दस्तावेज करने के लिए होती हैं जो आर वापस आ जाएगी।

data(PlantGrowth)
str(PlantGrowth)
## 'data.frame':    30 obs. of  2 variables:
## $ weight: num  4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ...
## $ group : Factor w/ 3 levels "ctrl","trt1",..: 1 1 1 1 1 1 1 1 1 1 ...
anova(lm(weight ~ group, data = PlantGrowth))
## Analysis of Variance Table
## 
## Response: weight
##           Df  Sum Sq Mean Sq F value  Pr(>F)  
## group      2  3.7663  1.8832  4.8461 0.01591 *
## Residuals 27 10.4921  0.3886                  
## ---
## Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
boxplot(weight ~ group, data = PlantGrowth, ylab = "Dry weight")
 

निम्नलिखित साजिश बनाई गई है:

Boxplot, PlantGrowth उदाहरण डेटा सेट से बनाया गया है

data(PlantGrowth) उदाहरण डेटा सेट PlantGrowth लोड करता है, जो पौधों के शुष्क द्रव्यमानों का रिकॉर्ड है जो दो अलग-अलग उपचार स्थितियों के अधीन थे या बिल्कुल भी उपचार नहीं थे (नियंत्रण समूह)। डेटा सेट PlantGrowth नाम से उपलब्ध कराया गया है। ऐसे नाम को चर भी कहा जाता है।

अपना स्वयं का डेटा लोड करने के लिए, निम्नलिखित दो प्रलेखन पृष्ठ सहायक हो सकते हैं:

str(PlantGrowth) उस डेटा सेट के बारे में जानकारी दिखाता है जिसे लोड किया गया था। आउटपुट इंगित करता है कि PlantGrowth एक data.frame , जो एक तालिका के लिए आर का नाम है। data.frame में दो कॉलम और 30 पंक्तियाँ होती हैं। इस मामले में, प्रत्येक पंक्ति एक पौधे से मेल खाती है। दो कॉलम का विवरण $ शुरू होने वाली लाइनों में दिखाया गया है: पहले कॉलम को weight कहा जाता weight और इसमें संख्याएँ ( num , संबंधित पौधे का सूखा वजन) होती हैं। दूसरे स्तंभ, group , में वह उपचार होता है जो पौधे के अधीन था। यह श्रेणीबद्ध डेटा है, जिसे आर में factor कहा जाता है। डेटा फ़्रेम के बारे में अधिक जानकारी पढ़ें

तीन अलग-अलग समूहों के शुष्क द्रव्यमान की तुलना करने के लिए, एनोवा anova(lm( ... )) का उपयोग करके एक-तरफ़ा एनोवा का प्रदर्शन किया जाता है। weight ~ group अर्थ है "स्तंभ के weight की तुलना करें, समूह समूह के मूल्यों के आधार पर group "। इसे R. data = ... में एक फॉर्मूला कहा जाता है data = ... उस तालिका का नाम निर्दिष्ट करता है जहां डेटा पाया जा सकता है।

परिणाम से पता चलता है, दूसरों के बीच, कि तीन समूहों में से कुछ के बीच एक महत्वपूर्ण अंतर (कॉलम Pr(>F) ), p = 0.01591 ) मौजूद है। टॉक के टेस्ट की तरह पोस्ट-हॉक टेस्ट, यह निर्धारित करने के लिए किए जाने चाहिए कि कौन से समूह का अर्थ काफी भिन्न है।

boxplot(...) डेटा का एक बॉक्स प्लॉट बनाता है। प्लॉट किए जाने वाले मूल्य कहां से आते हैं। weight ~ group अर्थ है: "स्तंभ group के मान बनाम स्तंभ के वजन का प्लॉट करें। ylab = ... y अक्ष के लेबल को निर्दिष्ट करता है। अधिक जानकारी: आधार प्लॉटिंग

R सत्र से बाहर निकलने के लिए q() या Ctrl - D टाइप करें।

आर स्क्रिप्ट

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

plants.R के नाम के साथ एक पाठ फ़ाइल बनाएँ। और इसे निम्नलिखित पाठ के साथ भरें, जहाँ कुछ कमांड ऊपर दिए गए कोड ब्लॉक से परिचित हैं:

data(PlantGrowth)

anova(lm(weight ~ group, data = PlantGrowth))

png("plant_boxplot.png", width = 400, height = 300)
boxplot(weight ~ group, data = PlantGrowth, ylab = "Dry weight")
dev.off()    
 

अपने टर्मिनल में टाइप करके स्क्रिप्ट निष्पादित करें (आपके ऑपरेटिंग सिस्टम का टर्मिनल, पिछले अनुभाग की तरह एक इंटरैक्टिव आर सत्र नहीं !)।

R --no-save <plant.R >plant_result.txt
 

फ़ाइल plant_result.txt में आपकी गणना के परिणाम शामिल हैं, जैसे कि आपने उन्हें इंटरेक्टिव R प्रॉम्प्ट में टाइप किया था। जिससे आपकी गणना का दस्तावेजीकरण हो जाता है।

नए कमांड png और dev.off का उपयोग बॉक्सप्लॉट को डिस्क में सेव करने के लिए किया जाता है। उपरोक्त आदेश में दिखाए गए अनुसार दोनों कमांड को प्लॉटिंग कमांड को जोड़ना होगा। png("FILENAME", width = ..., height = ...) पिक्सेल में निर्दिष्ट फ़ाइल नाम, चौड़ाई और ऊँचाई के साथ एक नया PNG फ़ाइल खोलता है। dev.off() प्लॉटिंग को पूरा करेगा और प्लॉट को डिस्क में सेव करेगा। जब तक dev.off() कहा जाता है तब तक कोई आउटपुट सेव नहीं किया जाता है।