उन्नत पायथन विकास पाठ्यक्रम
अध्याय
>
स्तर
गणित मॉड्यूल
सांख्यिकी मॉड्यूल
उद्देश्य
कार्यालय जाएँ और statistics module का उपयोग करके फार्म की मेट्रिक्स के लिए सांख्यिकी डेटा दर्ज करें।
अटारी से नीचे सीढ़ियाँ उतरते हुए एक कार्यालय है, जिसमें फार्म के महत्वपूर्ण डेटा को संग्रहित करने वाली फाइलें रखी जाती हैं। यह डेटा को प्रोसेस करना और उसका दस्तावेजीकरण करना एक अच्छा विचार होगा ताकि फार्म की भविष्य की वृद्धि का प्रोजेक्शन किया जा सके। इस काम को करने के लिए हम statistics Module का उपयोग करेंगे। मॉड्यूल्स हमें फ़ंक्शन, क्लासेस और इसी तरह के उपकरणों को इम्पोर्ट करने की अनुमति देते हैं, जिससे पायथन की कार्यक्षमता का विस्तार किया जा सके। एक मॉड्यूल सेट अप करने के लिए आप मॉड्यूल के नाम से पहले import लिखते हैं, सही है, आपने इस पूरे समय प्लेयर को कंट्रोल करने के लिए एक मॉड्यूल का उपयोग किया है!
import statistics
यह मॉड्यूल सांख्यिकी की गणना के लिए कई फ़ंक्शन प्रदान करता है, यहाँ कुछ ऐसे फ़ंक्शन दिए गए हैं जिनका उपयोग हम कार्यालय में सांख्यिकी डेटा को प्रोसेस करने के लिए करेंगे:
statistics.mean(): किसी डेटा सेट का औसत निकालता हैstatistics.median(): किसी डेटा सेट का मध्य मान निकालता हैstatistics.median_low(): किसी डेटा सेट का सबसे कम मध्य मान निकालता हैstatistics.median_high(): किसी डेटा सेट का सबसे उच्च मध्य मान निकालता हैstatistics.mode(): किसी डेटा सेट की केंद्रीय प्रवृत्ति निकालता है, दूसरे शब्दों में उस मान को जो डेटा नमूने में सबसे अधिक मौजूद है।statistics.variance(): किसी डेटा सेट में मानों के विचलन की गणना करता है। एक उच्च संख्या का मतलब है कि मान फैले हुए हैं, जबकि एक निम्न संख्या का मतलब है कि मान करीब हैं।
रिकॉर्डिंग कैबिनेट्स के सामने लगे लाइट X मार्क तक पहुँचकर शुरू करें, और फाइलों की जाँच व डेटा पढ़ने के लिए read() फ़ंक्शन का उपयोग करें। क्षेत्र में पढ़ने के लिए तीन (3) रिपोर्ट्स हैं, प्रत्येक के लिए डेटा संग्रहीत करने हेतु तीन (3) सूचियाँ बनाएं: weather_report, export_report और harvest_report। प्रत्येक रिपोर्ट में साल के पहले छह (6) महीनों से संबंधित डेटा के छह (6) मान शामिल हैं। जब आप उन्हें पढ़ें, तो प्रत्येक सूची में इन छह (6) मानों को नोट और संग्रहित करें।
जब आपने सूचियों में डेटा को नोट और स्टोर कर लिया, तब नीले कालीन पर स्थित डार्क X मार्क की ओर बढ़ें। पाँच चर (variables) बनाएं जिनके नाम हों: mean, median, low, high और variance। ये चर उन सांख्यिकी फ़ंक्शंस के मानों को रखने वाले हैं जिन्हें हमने पहले बताया था। हम जो करने जा रहे हैं वह यह है कि हम उस रिपोर्ट की सूची को इन फ़ंक्शंस में डालें जिससे हम सांख्यिकी प्राप्त करना चाहते हैं, और इस तरह दी गई डेटा के लिए सांख्यिकी उत्पन्न की जाएगी।
mean = statistics.mean( report list ) median = statistics.median( report list ) low = statistics.median_low( report list ) high = statistics.median_high( report list ) variance = statistics.variance( report list )
इस सांख्यिकी डेटा के साथ हम मेमो में डेटा नोट करने के लिए write() फ़ंक्शन का उपयोग करेंगे, कोड एडिटर में आवश्यक अनुक्रम पहले से ही लिखे गए होंगे। नीले कालीन के X मार्क पर export_report के लिए चर निर्धारित करें और उन्हें लिखें। हरे कालीन के X मार्क पर harvest_report के लिए चर निर्धारित करें और उन्हें लिखें। लाल कालीन के X मार्क पर weather_report के लिए चर निर्धारित करें और उन्हें लिखें। प्रत्येक रिपोर्ट के लिए सही सांख्यिकी डेटा लिखने हेतु आपको पहले संबंधित चर को भरना होगा।
जब सभी सांख्यिकी डेटा दर्ज कर लिया जाए, तब सुनहरे (gold) X मार्क की ओर बढ़ें और group_report नाम की एक नई सूची बनाएं। इस सूची में आप क्रमशः export_report और harvest_report को जोड़ेंगे। इससे एक नेस्टेड सूची बनेगी जिसे सांख्यिकी फ़ंक्शंस के साथ प्रयोग नहीं किया जा सकता, इसे सुधारने के लिए नेस्टेड सूची को फ्लैटन करने हेतु एक list comprehension का उपयोग करें, इस प्रकार: group_report= [item for sublist in group_report for item in sublist]
दो और चर सेट करें: variance और mode उनके संबंधित सांख्यिकी फ़ंक्शंस के साथ। group_report सूची को variance सांख्यिकी फ़ंक्शन में डालें, और weather_report सूची को mode सांख्यिकी फ़ंक्शन में डालें, इस प्रकार: variance = statistics.variance( group_report ), mode = statistics.mode( weather_report )। स्तर को पूरा करने के लिए इन चर के लिए कोड एडिटर में सेट की गई write() फ़ंक्शन को निष्पादित करें।