मुझे याद है कि आर उपयोगकर्ताओं को यह कहते हुए कि वे "संशोधन नियंत्रण" (e.g: "Source control") का उपयोग करते हैं, और मुझे यह जानकर उत्सुकता है: आप अपने सांख्यिकीय विश्लेषण वर्कफ़्लो के साथ "संशोधन नियंत्रण" कैसे जोड़ते हैं?आर के लिए "वर्कफ़्लो" के साथ आप "संशोधन नियंत्रण" को कैसे जोड़ते हैं?
दो (बहुत) रोचक चर्चाएं वर्कफ़्लो से निपटने के तरीके के बारे में बात करती हैं। लेकिन उनमें से कोई भी संशोधन नियंत्रण तत्व का संदर्भ लें:
प्रश्न करने के लिए एक लंबे समय से अपडेट: टिप्पणी में लोगों की कुछ उत्तर, और एक प्रकार की कटार के सवाल के बाद , मैं अपने प्रश्न को थोड़ा और निर्देशित करना चाहता हूं।
"revision control" के बारे में विकी लेख (जो मैं पहले से परिचित नहीं था) को पढ़ने के बाद, यह मेरे लिए स्पष्ट था कि संशोधन नियंत्रण का उपयोग करते समय, क्या नहीं करता उसके कोड का एक विकास संरचना निर्माण करना है। यह संरचना या तो "अंतिम उत्पाद" या कई शाखाओं की ओर ले जाती है।
कुछ ऐसा बनाते समय, एक वेबसाइट कहें। आमतौर पर एक अंत उत्पाद होता है जो आप (वेबसाइट) की ओर काम करते हैं, जिस तरह से कुछ प्रोटोटाइप होते हैं।
लेकिन सांख्यिकीय विश्लेषण करते समय, काम (मेरे विचार में) अलग है। कभी-कभी आप जानते हैं कि आप कहां जाना चाहते हैं। लेकिन अधिक बार, आप एक्सप्लोर करते हैं। डेटासेट की सफाई का अन्वेषण करें। सांख्यिकीय विश्लेषण के लिए विभिन्न विधियों का अन्वेषण करें, और अपने डेटा के विभिन्न प्रश्न पूछें (और मैं यह लिख रहा हूं, फ्रैंक हैरेल कैसे जानता हूं, और अन्य अनुभव सांख्यिकीविदों को Data dredging के बारे में लगता है)।
यही कारण है कि सांख्यिकीय प्रोग्रामिंग के साथ कार्यप्रवाह सवाल है, एक गंभीर और गहरी सवाल (मेरे विचार में) है कई मुद्दों को उठाने, सरल लोगों तकनीकी कर रहे हैं:
- कौन सा संशोधन नियंत्रण सॉफ्टवेयर का उपयोग करते हैं (और क्यूं कर) ?
- आप किस आईडीई का उपयोग करते हैं (और क्यों)? अधिक दिलचस्प सवाल कार्य प्रक्रिया के बारे में हैं:
- आप अपनी फ़ाइलों को कैसे बनाते हैं?
- आप एक अलग फ़ाइल के रूप में क्या रखते हैं और संशोधन के रूप में क्या करते हैं? या एक अलग तरीके से पूछना - एक "शाखा" क्या होना चाहिए और आपके कोड में "उप परियोजना" क्या होनी चाहिए? उदाहरण के लिए: जब आपका डेटा एक्सप्लोर करना शुरू होता है, तो क्या एक प्लॉट बनाना चाहिए और फिर मिटा दिया जाना चाहिए क्योंकि यह किसी भी जगह का नेतृत्व नहीं करता है (लेकिन संशोधन के रूप में रखा जाता है) या उस पथ की बैकअप फ़ाइल होनी चाहिए?
कैसे आप इस तनाव को हल करने के लिए मेरी प्रारंभिक जिज्ञासा थी। दूसरा सवाल यह है कि "मैं क्या खो सकता हूं?"। संस्करण नियंत्रण के साथ सांख्यिकीय प्रोग्रामिंग कर रहे सामान्य नुकसान से बचने के लिए किस नियम (अंगूठे) का पालन करना चाहिए?
मेरे अंतर्ज्ञान में, मुझे लगता है कि सांख्यिकीय प्रोग्रामिंग स्वाभाविक रूप से अलग है, तो सॉफ्टवेयर विकास (मैं सांख्यिकीय प्रोग्रामिंग में एक वास्तविक विशेषज्ञ होने के बिना इसे लिख रहा हूं, और सॉफ्टवेयर विकास में भी कम है)। इस तरह से मैं अनिश्चित हूं कि संस्करण नियंत्रण के बारे में मैंने जो सबक पढ़ा है, वह लागू होगा।
धन्यवाद एक बहुत, ताल
प्रश्न क्या है? जब आपके वर्कफ़्लो में फ़ाइल का नया संस्करण होता है, तो आप इसे प्रतिबद्ध करते हैं। संशोधन नियंत्रण आपको शाखा, वापस लाने की अनुमति देता है ... लेकिन यह सब वर्कफ़्लो प्रश्न के लिए कुछ हद तक ऑर्थोगोनल है। तो कृपया बताएं कि आप क्या जवाब देना चाहते हैं। –
एक और: यदि कुछ भी हो, तो यह संपादक/विचार अनुशंसा के बारे में आपके पिछले प्रश्न में संबंध रखता है। और हां, Emacs वास्तव में संशोधन नियंत्रण अभिन्नता भी करता है क्योंकि 'एम-एक्स svn-status' मेरी दुनिया का नियम है :) –
हाय डिर्क, मैंने स्पष्ट होने की आशा में अपना प्रश्न बढ़ाया। आपका इतना समय और अनुभव साझा करने के लिए धन्यवाद। चीयर्स, ताल –