आर को प्रोग्रामिंग भाषा के रूप में कैसे जानें [बंद]


105

मैं यह जानना चाहता हूं कि R को 'प्रोग्रामिंग' भाषा के रूप में कैसे सीखा जाए क्योंकि यह एक सांख्यिकीय प्रणाली के रूप में सीखने के विपरीत है। मेरा प्रश्न पार्स, ईवैल आदि जैसे कार्यों की समझ की कमी से प्रेरित है, जो एक आर उपयोगकर्ता द्वारा 'सांख्यिकी' अनुनय के साथ लगातार उपयोग नहीं मिल सकता है।

संपादित करें: मैं Rpy RSPerl rJava जैसे उपकरण खोज रहा हूं और (बहुत कम से कम) उन अवधारणाओं को समझने में सक्षम होना चाहिए जो अन्य प्रोग्रामिंग भाषाओं के साथ R के संचार को सुविधाजनक बनाते हैं।

R (R-PHP, RApache, इत्यादि) के लिए वेब अनुप्रयोगों की उपलब्धता मेरे लिए R का गहन, अधिक संरचनात्मक समझ हासिल करने का एक और प्रेरणा कारक है।

अंतिम लेकिन कम से कम नहीं, मैं R संकुल लिखना चाहूंगा जिसके लिए ऐसी समझ लाभदायक होगी यदि आवश्यक नहीं है।


1
आपको बेहतर उत्तर मिलेंगे यदि आप कह सकते हैं कि आप एक सांख्यिकीय प्रणाली के बजाय आर को प्रोग्रामिंग भाषा के रूप में उपयोग करने पर विचार क्यों कर रहे हैं। क्या आप R में पहले से विकसित अन्य सॉफ़्टवेयर के साथ एक साथ नज़र आ रहे हैं? क्या आपके पास अन्य प्रोग्रामर हैं जो आर के अलावा कुछ नहीं जानते हैं, इसलिए आप इसे विकसित करने के लिए मजबूर हैं?
चिप यूनी

7
निश्चित रूप से "सांख्यिकीय सॉफ्टवेयर इंजीनियरिंग विथ आर" जैसे शीर्षक के साथ एक पुस्तक की आवश्यकता है, जो आर को प्रोग्रामिंग भाषाओं से समझाएंगे, आर में कार्यात्मक प्रोग्रामिंग और ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग के सिद्धांतों पर चर्चा करेंगे, और वास्तव में सर्वोत्तम प्रथाओं पर ध्यान केंद्रित करेंगे। अपेक्षाकृत बड़ी प्रणालियों के विकास के लिए।
हरलन नोव

मुझे लगता है कि यह इस भाषा को सीखने का सबसे मज़ेदार तरीका है: tryr.codeschool.com/levels/1/challenges/16
काया

फिर से खोलने के लिए मेरा वोट इस तथ्य पर आधारित है कि यह एक अत्यधिक उत्कीर्ण प्रश्न है और जब आप "स्टैकओवरफ़्लो आर" पर खोज करते हैं तो Google पर पहली हिट में से एक है। यह 10 साल पुराना है और केवल कुछ सिफारिशें अभी भी मान्य हैं। इसके अलावा कि अधिक आधुनिक सामग्री की पेशकश करने के अवसरों की कमी को बंद कर दिया गया है।
IRTFM

@ 42- आप इसे "ट्यूटोरियल की तलाश में" सवाल नहीं मानेंगे?
कैमिल

जवाबों:


87

शुरुआत के लिए, आप जॉन कुक के इस लेख को देखना चाह सकते हैं । यह भी सुनिश्चित करें कि आप "आर आर इन्फर्नो" पढ़ते हैं ।

आर होमपेज पर कई अच्छे संसाधन हैं , लेकिन विशेष रूप से, "एन इंट्रोडक्शन टू आर" और "द आर लैंग्वेज डेफिनिशन" पढ़ें ।

कुछ बहुत ही बारीकी से संबंधित ढेर सवाल:

इस विषय पर मेरी पसंदीदा पुस्तक: "सॉफ्टवेयर फॉर डेटा एनालिसिस: प्रोग्रामिंग विथ आर", जॉन चेंबर्स द्वारा , एस भाषा के निर्माता।


मैं उसी लिंक से जवाब देने जा रहा था। @harshsinghal यह मानते हुए कि आप प्रोग्रामिंग में पूर्ण शुरुआत नहीं कर रहे हैं, यह लिंक बहुत उपयोगी है।
सेको नो

मैं भी आर नरक के लिए व्रत करने जा रहा हूँ। इसमें बहुत कुछ शामिल है जो मैं क्रियाओं और धार्मिक विश्वासों के बिना चेम्बर्स पुस्तक से बाहर निकला।
ईटान

आर नरक दस्तावेज शानदार है
फेडरिको जियोर्गी

23

आर-ए-ए-प्रोग्रामिंग-लैंग्वेज (आर-फॉर-स्टैटिस्टिक्स के विपरीत) सीखने के लिए एक अच्छी किताब द आर्ट ऑफ आर प्रोग्रामिंग है , जो नॉर्मन मैटलॉफ द्वारा लिखी गई है।

यहां छवि विवरण दर्ज करें

यह बहुत ही पठनीय है, मान लीजिए कि आप एक कंप्यूटर वैज्ञानिक नहीं हैं, और यह आर पुस्तकों के चलते काफी सस्ती है।


18

मैं बल्कि माइकल क्रॉली की द आर बुक की तरह एक अच्छी और व्यापक शुरुआत का सुझाव दूंगा। यह सांख्यिकीय युक्तियों और कुछ अभ्यासों के साथ आर कोर कार्यों पर एक आसान-से-पढ़ने और पूर्ण पुस्तक है। यह R खूबियों पर ध्यान केंद्रित करता है (जैसे रैखिक मॉडल) और उपयोगी कोडिंग ट्रिक्स भी देता है। जब मैंने क्रिप्टिक ऑनलाइन पाठ्यक्रमों पर संघर्ष कर रहा था तो इससे मुझे बहुत मदद मिली।

वैकल्पिक शब्द


2
मैं सहमत हूं - यह एक उत्कृष्ट परिचयात्मक पुस्तक है; क्रॉली बहुत स्पष्ट रूप से लिखते हैं।
रिची कॉटन

यह बहुत विस्तृत है। ऊपर जॉन कुक का लेख अधिक संक्षिप्त तरीका है। एक प्रोग्रामर के रूप में, आपको "द आर बुक" के एक बड़े हिस्से की आवश्यकता नहीं है।
मैक्स

14

मैं एक बहुत ही सीखने वाला व्यक्ति हूं, इसलिए यह सलाह मेरी सीखने की शैली के लिए विशिष्ट हो सकती है। मेरा सुझाव है कि किसी भी भाषा में "सीखने के लिए कार्यक्रम" शुरू करने के लिए सबसे अच्छी जगह आपके सामान्य अनुभव के बाहर की समस्याओं को खोजना और फिर उन्हें प्रोग्रामिंग भाषा का उपयोग करके हल करने का प्रयास करना शामिल है।

जिन परियोजनाओं ने मुझे सबसे अधिक सिखाया कि किस तरह से प्रोग्राम करना है, Rउनका आँकड़ों से कोई लेना-देना नहीं है।

इस तरह के कार्यों को जानना parse()और eval()किसी भी तरह से "एक अच्छा आर प्रोग्रामर" होने का एक उपाय नहीं है। जिन अनुप्रयोगों को इन कार्यों के भारी उपयोग की आवश्यकता होती है, वे उस समस्या स्थान का अधिकांश हिस्सा नहीं बनाते हैं जिसमें आप आवेदन कर सकते हैं R। इसके बजाय, मुझे लगता है कि आपको "अच्छा प्रोग्रामर" बनने की कोशिश करनी चाहिए जो जानता हो R। इसमें आपकी समस्या को सुलझाने के तरीकों को परिष्कृत करना शामिल है।

प्रोग्रामिंग एक दर्शक खेल नहीं है - एक अच्छी पुस्तक उपलब्ध उपकरणों पर एक संदर्भ के रूप में अपरिहार्य है, लेकिन आपको कुछ समस्याओं को खोजने की आवश्यकता है, जिस पर अपने कौशल को सुधारने के लिए।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.