जब मैं स्नातक स्तर के आंकड़े पढ़ा रहा था, तो मैं अपने छात्रों को बता रहा था: "मुझे परवाह नहीं है कि आप किस पैकेज का उपयोग करते हैं, और आप अपने होमवर्क के लिए कुछ भी उपयोग कर सकते हैं, जैसा कि मैं आपसे स्पष्ट स्पष्टीकरण प्रदान करने की अपेक्षा करता हूं, और अगर मैं करूंगा देख tr23y5m
आपके प्रस्तुतियाँ में परिवर्तनशील नाम। मैं स्टाटा में आपके सीखने का बहुत अच्छा समर्थन कर सकता हूं, और यथोचित रूप से, आर। में, एसएएस के साथ, आप अपने दम पर हैं, जैसा कि आप दावा करते हैं कि आपने इसमें एक कोर्स लिया है। SPSS या मिनिटैब के साथ, भगवान आपको आशीर्वाद देते हैं "। मुझे लगता है कि उचित नियोक्ता समान सोचते हैं। परियोजना के परिणामों के मामले में आपकी उत्पादकता क्या है। यदि आप 40 घंटे के काम के साथ आर में लक्ष्य प्राप्त कर सकते हैं, तो ठीक है; यदि आप इसे C ++ में 40 घंटे के काम में हासिल कर सकते हैं, ठीक है; यदि आप जानते हैं कि यह आर में 40 घंटे में कैसे करना है, लेकिन आपका पर्यवेक्षक आपको एसएएस में ऐसा करना चाहता है, और आपको कुछ मूल बातें सीखने के लिए सिर्फ 60 घंटे खर्च करने होंगे और जहाँ अर्धविराम जाते हैं, वह केवल शेष कोड की बड़ी तस्वीर के संदर्भ में समझदार हो सकता है ... और तब प्रबंधक एक आर प्रोग्रामर को काम पर रखने में बहुत समझदार नहीं था।
कुल लागत के इस दृष्टिकोण से, "नि: शुल्क" आर एक बेहद हद तक मिथक है। किसी भी गंभीर परियोजना के लिए कस्टम कोड की आवश्यकता होती है, अगर सिर्फ डेटा इनपुट के लिए और आउटपुट स्वरूपण के लिए, और यह पेशेवर समय की गैर-शून्य लागत है। यदि इस डेटा इनपुट और फॉर्मेटिंग के लिए एसएएस कोड के 10 घंटे और आर कोड के 20 घंटे की आवश्यकता होती है, तो आर मार्जिन पर एक अधिक महंगा सॉफ्टवेयर है , जैसा कि एक अर्थशास्त्री कार्यक्षमता के दिए गए टुकड़े का उत्पादन करने के लिए अतिरिक्त लागत के संदर्भ में कहेगा। । यदि किसी बड़ी परियोजना के लिए 200 घंटे R प्रोग्रामर के समय की आवश्यकता होती है और समान कार्यक्षमता प्रदान करने के लिए Stata प्रोग्रामर के 100 घंटे के समय में, Stem समग्र सस्ता होता है, यहां तक कि ~ $ 1K लाइसेंस के लिए लेखांकन जो आपको खरीदने की आवश्यकता है। ऐसी प्रत्यक्ष तुलनाओं को देखना दिलचस्प होगा; मैं SPSS कोड के 2Mb की एक बड़ी गड़बड़ी को फिर से लिखने में शामिल था, जिसके बारे में कहा गया था कि Stata कोड के ~ 150K में लगभग 10 व्यक्ति-वर्ष जमा हो गए थे, जो जितनी तेजी से चलता था, उतना ही तेज हो सकता है; यह लगभग 1 व्यक्ति-वर्ष परियोजना थी। मुझे नहीं पता कि यह 10: 1 दक्षता अनुपात एसपीएसएस के लिए विशिष्ट है: स्टैटा तुलना, लेकिन मुझे आश्चर्य नहीं होगा यदि यह था। मेरे लिए, खोज लागतों के कारण R के साथ काम करना हमेशा एक बड़ा खर्च होता है: मुझे यह निर्धारित करना होगा कि समान नामों वाले पांच पैकेजों में से मुझे क्या करना है, और यह पता लगाना है कि क्या यह मज़बूती से मेरे लिए इसे उपयोग करने के लिए पर्याप्त है मेरा काम। अक्सर इसका मतलब है कि मेरे लिए यह सस्ता है कि मैं अपना स्टैट्टा कोड कम समय में लिखूं कि मैं किसी कार्य में आर काम कैसे करूं। यह समझा जाना चाहिए कि यह मेरी व्यक्तिगत पहचान है; इस साइट पर अधिकांश लोग मेरे से बेहतर उपयोग करते हैं।
मजेदार यह है कि आपके प्रोफेसर आर के ऊपर स्टाटा या GAUSS पसंद करेंगे क्योंकि "आर अर्थशास्त्रियों द्वारा नहीं लिखा गया था"। न तो Stata या GAUSS थे; वे कंप्यूटर वैज्ञानिकों के उपकरणों का उपयोग करके कंप्यूटर वैज्ञानिकों द्वारा लिखे गए हैं। यदि आपके प्रोफेसर को CodeAcademy.com से प्रोग्रामिंग के बारे में विचार मिलते हैं, तो यह कुछ भी नहीं से बेहतर है, लेकिन व्यावसायिक ग्रेड सॉफ्टवेयर विकास कोडएकैडमी.कॉम टेक्स्ट बॉक्स में टाइप करने से अलग है क्योंकि भाड़ा ट्रक चलाना बाइक चलाने से अलग है। (स्टाटा को एक श्रम अर्थशास्त्री द्वारा परिवर्तित कंप्यूटर वैज्ञानिक द्वारा शुरू किया गया था, लेकिन वह अब तक लगभग 25 वर्षों से इस श्रम अर्थमिति की बात नहीं कर रहे हैं।)
अपडेट : जैसा कि एंडीडब्ल्यू ने नीचे टिप्पणी की है, आप किसी भी भाषा में भयानक कोड लिख सकते हैं। लागत का प्रश्न तब बनता है, जिस भाषा में डिबग करना आसान है। मेरे लिए यह ऐसा लगता है कि आउटपुट कितना सटीक और ज्ञानवर्धक है, और वाक्य रचना स्वयं कितनी आसान और पारदर्शी है, और मेरे पास इसके लिए कोई अच्छा जवाब नहीं है। उदाहरण के लिए, पायथन कोड इंडेंटिंग को लागू करता है, जो एक अच्छा विचार है। स्टैटा और आर कोड को कोष्ठक के ऊपर मोड़ा जा सकता है, और यह एसएएस के साथ काम करने वाला नहीं है। सबरूटीन का उपयोग एक दोधारी तलवार है: आर में *apply()
तदर्थ के साथ का उपयोग function
स्पष्ट रूप से बहुत कुशल है, लेकिन डीबग करना कठिन है। एक समान टोकन के द्वारा, स्टाटा local
एस लगभग कुछ भी मुखौटा कर सकता है, और एक खाली स्ट्रिंग को डिफ़ॉल्ट कर सकता है, जबकि उपयोगी, मुश्किल से पकड़ने वाली त्रुटियों को भी जन्म दे सकता है।