2013-07-31 7 views

उत्तर

26

आप dstack उपयोग कर सकते हैं:

>>> np.dstack((a,b)) 
array([[[0, 0], 
     [1, 1], 
     [2, 2], 
     [3, 3]], 

     [[4, 4], 
     [5, 5], 
     [6, 6], 
     [7, 7]]]) 

आप tuples है चाहिए:

>>> np.array(zip(a.ravel(),b.ravel()), dtype=('i4,i4')).reshape(a.shape) 
array([[(0, 0), (1, 1), (2, 2), (3, 3)], 
     [(4, 4), (5, 5), (6, 6), (7, 7)]], 
     dtype=[('f0', '<i4'), ('f1', '<i4')]) 

पायथन के लिए 3+ आप zip इटरेटर वस्तु का विस्तार करने की जरूरत है। कृपया ध्यान दें कि इस बुरी तरह अक्षम है:

>>> np.array(list(zip(a.ravel(),b.ravel())), dtype=('i4,i4')).reshape(a.shape) 
array([[(0, 0), (1, 1), (2, 2), (3, 3)], 
     [(4, 4), (5, 5), (6, 6), (7, 7)]], 
     dtype=[('f0', '<i4'), ('f1', '<i4')]) 
+0

धन्यवाद! 'dstack' मेरे लिए महान काम करता है! – LWZ

+0

दूसरे कमांड के लिए मुझे 'टाइप एरर: एक बाइट्स जैसी ऑब्जेक्ट की आवश्यकता है, नहीं' ज़िप '- वह क्यों है? – Make42

+0

@ मेक 42 पाइथन 3 'ज़िप' एक पुनरावर्तक देता है। संपादित उत्तर देखें। – Daniel

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