NumPy 1.14 - numpy.ravel()

numpy.ravel




numpy

numpy.ravel

numpy.ravel(a, order='C') [source]

एक सन्निहित चपटा सरणी लौटें।

एक 1-D सरणी, जिसमें इनपुट के तत्व होते हैं, वापस आ जाती है। जरूरत होने पर ही कॉपी बनाई जाती है।

NumPy 1.10 के अनुसार, दिए गए सरणी में इनपुट सरणी के समान प्रकार होगा। (उदाहरण के लिए, एक नकाबपोश सरणी एक नकाबपोश सरणी इनपुट के लिए वापस आ जाएगी)

पैरामीटर:

a : array_like

इनपुट सरणी A में तत्व क्रम से निर्दिष्ट क्रम में पढ़े जाते हैं, और 1-डी सरणी के रूप में पैक किए जाते हैं।

आदेश : {'C', 'F', 'A', 'K'}, वैकल्पिक

इस इंडेक्स ऑर्डर का उपयोग करते हुए तत्वों को पढ़ा जाता है। 'सी' का मतलब तत्वों को पंक्ति-प्रमुख, सी-शैली क्रम में अनुक्रमित करना है, जिसमें अंतिम अक्ष सूचकांक सबसे तेजी से बदल रहा है, पहले अक्ष सूचकांक में सबसे धीमा बदल रहा है। 'एफ' का अर्थ है स्तंभ-प्रमुख, फोरट्रान-शैली क्रम में तत्वों को अनुक्रमित करना, पहला सूचकांक सबसे तेजी से बदल रहा है, और अंतिम सूचकांक सबसे धीमा। ध्यान दें कि 'C' और 'F' विकल्प अंतर्निहित सरणी के मेमोरी लेआउट का कोई हिसाब नहीं रखते हैं, और केवल अक्ष अनुक्रमण के क्रम को संदर्भित करते हैं। 'ए' का मतलब है कि अगर फोरट्रान जैसे कि स्मृति में फोर्ट्रान सन्निहित है तो सीरम जैसे ऑर्डर में तत्वों को पढ़ें। 'के' का अर्थ है कि वे तत्व स्मृति में घटित होते हैं, जब तार नकारात्मक होते हैं, तो डेटा को उलटने के अलावा। डिफ़ॉल्ट रूप से, 'C' इंडेक्स ऑर्डर का उपयोग किया जाता है।

यह दिखाता है:

y : array_like

यदि a मैट्रिक्स है, तो y 1-D ndarray है, अन्यथा y एक ही उप-प्रकार की एक सरणी a । लौटे हुए सरणी का आकार (a.size,) । पिछड़े अनुकूलता के लिए मैट्रिस विशेष आवरण हैं।

यह भी देखें

ndarray.flat
एक सरणी पर 1-डी पुनरावृत्ति।
ndarray.flatten
पंक्ति-प्रमुख क्रम में किसी सरणी के तत्वों की 1-डी सरणी प्रति।
ndarray.reshape
किसी सरणी के आकार को उसके डेटा को बदले बिना बदलें।

टिप्पणियाँ

पंक्ति-प्रमुख, C- शैली क्रम में, दो आयामों में, पंक्ति अनुक्रमणिका सबसे धीमी और स्तंभ अनुक्रमणिका सबसे तेज बदलती है। इसे कई आयामों के लिए सामान्यीकृत किया जा सकता है, जहां पंक्ति-प्रमुख क्रम का अर्थ है कि पहली धुरी के साथ सूचकांक सबसे धीमा और अंतिम सबसे तेज के साथ सूचकांक। स्तंभ-प्रमुख, फोरट्रान-शैली इंडेक्स ऑर्डरिंग के लिए विपरीत है।

जब कोई दृश्य यथासंभव मामलों में वांछित होता है, तो arr.reshape(-1) बेहतर हो सकता है।

उदाहरण

यह reshape(-1, order=order) बराबर है।

>>> x = np.array([[1, 2, 3], [4, 5, 6]])
>>> print(np.ravel(x))
[1 2 3 4 5 6]
>>> print(x.reshape(-1))
[1 2 3 4 5 6]
>>> print(np.ravel(x, order='F'))
[1 4 2 5 3 6]

जब order 'ए' है, तो यह एरे के 'सी' या 'एफ' ऑर्डर को संरक्षित करेगा:

>>> print(np.ravel(x.T))
[1 4 2 5 3 6]
>>> print(np.ravel(x.T, order='A'))
[1 2 3 4 5 6]

जब order 'K' है, तो यह ऐसे आदेशों को संरक्षित करेगा जो न तो 'C' हैं और न ही 'F' हैं, लेकिन एक्सिस को उल्टा नहीं करेंगे:

>>> a = np.arange(3)[::-1]; a
array([2, 1, 0])
>>> a.ravel(order='C')
array([2, 1, 0])
>>> a.ravel(order='K')
array([2, 1, 0])
>>> a = np.arange(12).reshape(2,3,2).swapaxes(1,2); a
array([[[ 0,  2,  4],
        [ 1,  3,  5]],
       [[ 6,  8, 10],
        [ 7,  9, 11]]])
>>> a.ravel(order='C')
array([ 0,  2,  4,  1,  3,  5,  6,  8, 10,  7,  9, 11])
>>> a.ravel(order='K')
array([ 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11])