सांख्यिकी की गणना करें

आपको n संख्याओं की एक सूची दी गई है, और आपका कार्य एक फ़ंक्शन calculate_statistics को लागू करना है जो विशिष्ट सांख्यिकीय मापों की गणना और वापसी करेगा: माध्य (mean), माध्यिका (median), और मोड (mode)।

यह फ़ंक्शन एक positional argument numbers लेगा, जो संख्याओं की सूची है, और तीन keyword-only arguments: mean, median, और mode, जिनका डिफ़ॉल्ट मान False है। फ़ंक्शन को केवल उन्हीं सांख्यिकीय मापों की गणना और लौटानी चाहिए जो True पर सेट हैं। यदि कोई सांख्यिकीय माप अनुरोधित नहीं है (सभी False सेट हैं), तो फ़ंक्शन को एक खाली डिक्शनरी लौटानी चाहिए।

फ़ंक्शन का आउटपुट एक डिक्शनरी होना चाहिए जिसमें सांख्यिकीय मापों के नाम कुंजी (keys) के रूप में और उनके गणना किए गए मान मान (values) के रूप में हों। फ़ंक्शन निम्नानुसार परिभाषित किया जाना चाहिए:

def calculate_statistics(numbers, *, mean=False, median=False, mode=False):

इनपुट

आउटपुट

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mean=True)

{'mean': 5.222222222222222}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], median=True)

{'median': 5}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mode=True)

{'mode': [2, 8]}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2], mean=True, median=True, mode=True)

{'mean': 5.222222222222222, 'median': 5, 'mode': [2, 8]}

calculate_statistics([4, 8, 6, 5, 3, 2, 8, 9, 2])

{}

calculate_statistics([1, 2], median=True, mean=True, mode=True)

{'mean': 1.5, 'median': 1.5, 'mode': [1, 2]}

नोट: यदि डेटा सेट बहु-मोडल (multi-modal) है, तो फ़ंक्शन को सभी मोड्स को सबसे छोटे से सबसे बड़े क्रम में एक सूची में लौटाना चाहिए। यदि डेटा सेट बहु-मोडल नहीं है, तो फ़ंक्शन को एकल मोड को एक सूची में लौटाना चाहिए। यदि कोई मोड नहीं है, तो 'mode' के मान के रूप में फ़ंक्शन को एक खाली सूची लौटानी चाहिए।

माध्य (mean)

संख्याओं की एक सूची का माध्य उन सभी संख्याओं के योग को संख्याओं की कुल संख्या से विभाजित करके प्राप्त किया जाता है।

माध्यिका (median)

माध्यिका वह मध्य मान है जब डेटा सेट को छोटे से बड़े क्रम में व्यवस्थित किया जाता है।

मोड (mode)

मोड वह संख्या है जो डेटा सेट में सबसे अधिक बार प्रकट होती है।

एक डेटा सेट में एक मोड, एक से अधिक मोड, या कोई मोड नहीं हो सकता है।

Constraints

Time limit: 1.6 seconds

Memory limit: 512 MB

Output limit: 1 MB