2012-12-18 9 views
5

मैं अलग-अलग लंबाई के साथ ndarray स्लाइस ले रहा हूं और मैं चाहता हूं कि मेरा परिणाम सपाट हो। उदाहरण के लिए:dtype ऑब्जेक्ट की एक numpy सरणी को कैसे फ़्लैट करें

a = np.array(((np.array((1,2)), np.array((1,2,3))), (np.array((1,2)), np.array((1,2,3,4,5,6,7,8))))) 

वहाँ इस सरणी numpy कार्यक्षमताओं (पाश के बिना) का उपयोग करके फ्लैट बनाने के लिए किसी भी सीधे तरीका है?

+0

इस उदाहरण में, आप क्या परिणाम होने की उम्मीद करते हैं? – NPE

+2

dtype 'object' की एक NumPy सरणी का उपयोग करना चीजों को गति देने में मदद नहीं करता है। वे पाइथन सूचियों के समान हैं, और वे केवल उपयोगी हैं अगर आपको एक समान इंटरफ़ेस को NumPy सरणी के रूप में उजागर करने की आवश्यकता है। इस अजीब डेटा संरचना का उपयोग करने का आपका उद्देश्य क्या है? –

+0

मेरे पास यादृच्छिक अंतराल में मेरे सिग्नल के लिए टैग हैं। स्लाइसिंग मुझे इस प्रकार का रिटर्न देता है (जब स्लाइस में अलग-अलग लंबाई होती है)। – jgrynczewski

उत्तर

11

कैसे के बारे में:

In [23]: np.hstack(a.flat) 
Out[23]: array([1, 2, 1, 2, 3, 1, 2, 1, 2, 3, 4, 5, 6, 7, 8]) 
+0

काम करता है। धन्यवाद – jgrynczewski

संबंधित मुद्दे