documentation -
numpy.transpose(a, axes=None)
कुल्हाड़ियों में दिए गए के रूप में: ints की सूची, वैकल्पिक डिफ़ॉल्ट रूप से, आयाम रिवर्स, अन्यथा दिए गए मान के अनुसार कुल्हाड़ियों दूसरे स्थान पर रखना।
दूसरा तर्क अक्ष है जिसका उपयोग मूल्यों की अनुमति है। उदाहरण के लिए यदि प्रारंभिक तत्व की अनुक्रमणिका (x,y,z)
है (जहां x
0 थी अक्ष, y
1 अक्ष है, और z
द्वितीय अक्ष है), परिणामी सरणी में उस तत्व की स्थिति (z, y, x) (वह है) axes
के लिए प्रदान किए गए तर्क के आधार पर, दूसरी अक्ष है, फिर पहली अक्ष, और अंतिम 0 वीं अक्ष)।
जब से तुम आकार (2,2,2)
की एक सरणी transposing कर रहे हैं, स्थानांतरित आकार भी (2,2,2)
है, और पदों के रूप में बदल जाएगा -
(0,0,0) -> (0,0,0)
(1,0,0) -> (0,0,1)
(0,1,0) -> (0,1,0)
(1,1,0) -> (0,1,1)
...
कुल्हाड़ियों आप चुनते तुच्छ हैं के बाद से, की सुविधा देता है के लिए यह समझाने एक और अक्ष उदाहरण -
In [54]: A = np.arange(30).reshape((2, 3, 5))
In [55]: A
Out[55]:
array([[[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14]],
[[15, 16, 17, 18, 19],
[20, 21, 22, 23, 24],
[25, 26, 27, 28, 29]]])
In [56]: np.transpose(A,(1,2,0))
Out[56]:
array([[[ 0, 15],
[ 1, 16],
[ 2, 17],
[ 3, 18],
[ 4, 19]],
[[ 5, 20],
[ 6, 21],
[ 7, 22],
[ 8, 23],
[ 9, 24]],
[[10, 25],
[11, 26],
[12, 27],
[13, 28],
[14, 29]]])
यहाँ, पहला तत्व (0,0,0)
परिणाम में (0,0,0)
तत्व बन जाता है।
दूसरा तत्व (0,0,1)
परिणाम में (0,1,0)
तत्व बन जाता है। और इसी तरह -
(0,0,0) -> (0,0,0)
(0,0,1) -> (0,1,0)
(0,0,2) -> (0,2,0)
...
(2,3,4) -> (3,4,2)
...
क्या आपने प्रलेखन पढ़ा था, यानी 'मदद (numpy.transpose) '? आप केवल आयामों को "अनुमति दें"। यदि आप क्रमपरिवर्तन '(2, 1, 0)' पास करते हैं, तो तत्व [x, y, z] 'स्थिति पर था, अब स्थिति' [z, y, x] ', या स्थिति में' [z, x, y] 'क्रमपरिवर्तन के लिए' (3, 0, 1) ' –
धन्यवाद @tobias_k –