Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में एक एन-आयामी सरणी का ग्रेडिएंट लौटाएं

ग्रेडिएंट की गणना आंतरिक बिंदुओं में दूसरे क्रम के सटीक केंद्रीय अंतरों का उपयोग करके की जाती है और या तो पहले या दूसरे क्रम में सीमाओं पर सटीक एक-पक्ष (आगे या पीछे) अंतर होता है। इसलिए लौटाई गई ढाल का आकार इनपुट सरणी के समान होता है। पहला पैरामीटर, f एक स्केलर फ़ंक्शन के नमूने युक्त एक एनडिमेंशनल सरणी है। दूसरा पैरामीटर varargs है यानी f मानों के बीच का अंतर। सभी आयामों के लिए डिफ़ॉल्ट एकात्मक रिक्ति।

तीसरा पैरामीटर है edge_order{1, 2} यानी ग्रैडिएंट की गणना सीमाओं पर N-th ऑर्डर के सटीक अंतर का उपयोग करके की जाती है। डिफ़ॉल्ट:1. चौथा पैरामीटर ग्रेडिएंट है, जिसकी गणना केवल दिए गए अक्ष या अक्षों के साथ की जाती है। डिफ़ॉल्ट (अक्ष =कोई नहीं) इनपुट सरणी के सभी अक्षों के लिए ढाल की गणना करना है। अक्ष ऋणात्मक हो सकता है, जिस स्थिति में यह अंतिम से प्रथम अक्ष तक गिना जाता है। विधि प्रत्येक आयाम के संबंध में f के व्युत्पन्न के अनुरूप ndarrays की एक सूची लौटाती है। प्रत्येक व्युत्पन्न का आकार f के समान होता है।

कदम

सबसे पहले, आवश्यक पुस्तकालय आयात करें -

np के रूप में numpy आयात करें

सरणी () विधि का उपयोग करके एक संख्यात्मक सरणी बनाना। हमने फ्लोट प्रकार के तत्वों को जोड़ा है -

arr =np.array([20, 35, 57, 70, 85, 120], dtype =float)

सरणी प्रदर्शित करें -

प्रिंट("हमारा ऐरे...\n",arr)

आयामों की जाँच करें -

प्रिंट("\nहमारे एरे के आयाम...\n",arr.ndim)

डेटाटाइप प्राप्त करें -

प्रिंट("\nहमारे ऐरे ऑब्जेक्ट का डेटाटाइप...\n",arr.dtype)

ग्रेडिएंट की गणना आंतरिक बिंदुओं में दूसरे क्रम के सटीक केंद्रीय अंतरों का उपयोग करके की जाती है और या तो पहले या दूसरे क्रम में सीमाओं पर सटीक एक-पक्ष (आगे या पीछे) अंतर होता है। इसलिए लौटाई गई ढाल का आकार इनपुट सरणी के समान होता है -

प्रिंट("\nपरिणाम (ग्रेडिएंट)...\n",np.gradient(arr))

उदाहरण

np के रूप में numpy आयात करें# array() विधि का उपयोग करके एक numpy array बनाना# हमने float typearr =np.array([20, 35, 57, 70, 85, 120], dtype =float)# के तत्वों को जोड़ा है। ऐरेप्रिंट प्रदर्शित करें ("हमारी ऐरे...\n",arr)# डाइमेंशनप्रिंट की जांच करें("\nहमारे ऐरे के आयाम...\n",arr.ndim)# डेटाटाइपप्रिंट प्राप्त करें("\nहमारे ऐरे ऑब्जेक्ट का डेटाटाइप ...\n",arr.dtype)# ग्रेडिएंट की गणना आंतरिक बिंदुओं में दूसरे क्रम के सटीक केंद्रीय अंतर और सीमाओं पर पहले या दूसरे क्रम के सटीक एक-पक्ष (आगे या पीछे) अंतर का उपयोग करके की जाती है। इसलिए लौटाए गए ग्रेडिएंट का आकार इनपुट ऐरे के समान होता है। 

आउटपुट

हमारा ऐरे...[ 20. 35. 57. 70. 85. 120.]हमारे ऐरे के आयाम...1हमारे ऐरे ऑब्जेक्ट का डेटाटाइप...float64Result (ग्रेडिएंट)...[15. 18.5 17.5 14. 25. 35. ]

  1. जांचें कि क्या पायथन में सरणी सुंदर है

    मान लीजिए कि हमारे पास अद्वितीय तत्वों की एक सरणी संख्या है। हमें यह जांचना होगा कि ये शर्तें पूरी करती हैं या नहीं: तत्व 1 से n के बीच होंगे। सरणी को आरोही क्रम में क्रमबद्ध नहीं किया जाना चाहिए। इसलिए, अगर इनपुट nums =[2,6,1,5,3,4] जैसा है, तो आउटपुट ट्रू होगा। इसे हल करने के लिए, हम इन चरणों

  1. जांचें कि क्या उप सरणी को उलटने से सरणी को पायथन में क्रमबद्ध किया जाता है

    मान लीजिए कि हमारे पास अद्वितीय तत्वों के साथ nums नामक एक सरणी है। हमें यह जांचना होगा कि एक उप-सरणी को उलटने के बाद सरणी को क्रमबद्ध किया जाएगा या नहीं। यदि सरणी पहले से ही क्रमबद्ध है, तो भी सही लौटें। इसलिए, यदि इनपुट nums =[4,6,27,25,15,9,37,42] की तरह है, तो आउटपुट सही होगा क्योंकि अगर हम [9,

  1. पायथन में वापसी विवरण

    स्टेटमेंट रिटर्न [एक्सप्रेशन] एक फ़ंक्शन से बाहर निकलता है, वैकल्पिक रूप से कॉलर को एक एक्सप्रेशन वापस भेज रहा है। बिना तर्क वाला रिटर्न स्टेटमेंट रिटर्न नो के समान होता है। उदाहरण उपरोक्त सभी उदाहरण कोई मूल्य नहीं लौटा रहे हैं। आप किसी फ़ंक्शन से एक मान इस प्रकार वापस कर सकते हैं - #!/usr/bin/pyth