2010-10-22 34 views
6

की एक पंक्ति पंक्ति मैं एक बड़ी NumPy सरणी की एक विशेष पंक्ति को जोड़ना चाहता हूं। मुझे पता है कि फंक्शन array.max() अधिकतम सरणी में अधिकतम देगा, और array.max(1) मुझे प्रत्येक पंक्ति में सरणी के रूप में अधिकतम प्रदान करेगा। हालांकि, मैं अधिकतम पंक्ति में अधिकतम प्राप्त करना चाहता हूं (उदाहरण के लिए, पंक्ति 7, या पंक्ति 2 9)। मेरे पास एक बड़ी सरणी है, इसलिए सभी पंक्तियों के लिए अधिकतम प्राप्त करने से मुझे एक महत्वपूर्ण समय दंड मिलेगा।एक NumPy सरणी

उत्तर

19

आप इंडेक्सिंग ऑपरेटर का उपयोग करके आसानी से दो-आयामी सरणी की एक पंक्ति तक पहुंच सकते हैं। पंक्ति स्वयं एक सरणी है, मूल सरणी के एक हिस्से का दृश्य है, और sum() और max() समेत सभी सरणी विधियों का खुलासा करता है।

x = arr[7].max() # Maximum in row 7 
y = arr[29].sum() # Sum of the values in row 29 

बस पूर्णता के लिए, आप एक ही कॉलम के लिए कर सकते हैं::

z = arr[:, 5].sum() # Sum up all values in column 5. 
इसलिए आप आसानी से इस तरह प्रति पंक्ति अधिकतम प्राप्त कर सकते हैं
संबंधित मुद्दे