NumPy सारणी में एक विशिष्ट पंक्ति के उदाहरण कुशलतापूर्वक ढूँढना
NumPy सारणी के साथ काम करते समय, किसी को यह निर्धारित करने की आवश्यकता का सामना करना पड़ सकता है कि क्या सरणी में एक विशिष्ट पंक्ति होती है, लेकिन ndarray के लिए मानक contains विधि प्रश्न उठाती है। यह आलेख इस समस्या के लिए कुशल और पायथोनिक समाधान प्रस्तुत करता है। .array([[1,2],[10,20],[100,200]]) [1,2] a.tolist() में # रिटर्न सही है [1,20] a.tolist() में # रिटर्न गलत है
एक अन्य विधि सरणी पर एक दृश्य का उपयोग करना है और प्रत्येक पंक्ति की तत्व-वार लक्ष्य पंक्ति के साथ तुलना करने के लिए .all(1) फ़ंक्शन को लागू करना है .
a = np.array([[1,2],[10,20],[100,200]]) [1,2] in a.tolist() # Returns True [1,20] in a.tolist() # Returns False
इसके अतिरिक्त, कोई भी संभावित प्रदर्शन को बढ़ावा देने के लिए NumPy सूची तैयार कर सकता है। हालाँकि, यदि परिणाम जल्दी नहीं मिलता है तो यह दृष्टिकोण अप्रभावी हो सकता है।
any((a[:]==[1,2]).all(1)) # Returns True any((a[:]==[1,20]).all(1)) # Returns False
अंत में, NumPy के तार्किक कार्य तुलना करने का एक संक्षिप्त तरीका प्रदान करते हैं।
any(([1,2] == x).all() for x in a) # Stops on first occurrence
बेंचमार्क परिणाम दर्शाते हैं कि सुन्न रूटीन हिट या मिस परिदृश्यों की परवाह किए बिना लगातार खोज गति बनाए रखता है। ऑपरेटर दृष्टिकोण में दृश्य, तर्क समान और पायथन दक्षता के मामले में तुलनीय हैं, जबकि पूर्ण सरणी खोजों के लिए NumPy पर जनरेटर की अनुशंसा नहीं की जाती है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3