न्यूम्पी एरे इटरेशन

अर्रे इटरेशन

इटरेशन का अर्थ है एलिमेंटों को एक-एक कर भ्रमण करना

जब हम numpy में बहुआयामी अर्रे को हैंडल करते हैं, तो हमें python के बुनियादी for चक्र का उपयोग कर सकते हैं

यदि हम 1-D अर्रे को इटरेशन करते हैं, तो यह प्रत्येक एलिमेंट को एक-एक कर भ्रमण करेगा

उदाहरण

निम्नलिखित एकायामी अर्रे के एलिमेंट को इटरेशन करें

import numpy as np
arr = np.array([1, 2, 3])
for x in arr:
  print(x)

उदाहरण चलाएं

2-D अर्रे को इटरेशन करें

2-D अर्रे में, यह सभी रेखाओं को भ्रमण करेगा

उदाहरण

निम्नलिखित द्विआयामी अर्रे के एलिमेंट को इटरेशन करें

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
for x in arr:
  print(x)

उदाहरण चलाएं

यदि हम एक n-D अर्रे को इटरेशन करते हैं, तो यह एक-एक कर आखिरी आयाम (n-1) को भ्रमण करेगा

वास्तविक मूल्यों, स्केलर को वापस करने के लिए, हमें प्रत्येक आयाम में अर्रे को इटरेशन करना होगा

उदाहरण

2-D अर्रे के प्रत्येक स्केलर एलिमेंट को इटरेशन करें

import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
for x in arr:
  for y in x:
    print(y)

उदाहरण चलाएं

3-D अर्रे को इटरेशन करें

3-D अर्रे में, यह सभी 2-D अर्रे को भ्रमण करेगा

उदाहरण

निम्नलिखित 3-D अर्रे के एलिमेंट को इटरेशन करें

import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
for x in arr:
  print(x)

उदाहरण चलाएं

वास्तविक मूल्यों, स्केलर को वापस करने के लिए, हमें प्रत्येक आयाम में अर्रे को इटरेशन करना होगा

उदाहरण

स्केलर तक इटरेशन करें

import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[7, 8, 9], [10, 11, 12]]])
for x in arr:
  for y in x:
    for z in y:
      print(z)

उदाहरण चलाएं

nditer() से अर्रे को इटरेशन करें

फ़ंक्शन nditer() एक सहायक फ़ंक्शन है, जो बहुत साधारण से लेकर बहुत उच्चस्तरीय भ्रमण तक के सभी भ्रमण का काम कर सकता है। यह हमारे इटरेशन में अभिभावीकृत कुछ बुनियादी समस्याओं को हल करता है, और हम उदाहरण के द्वारा इसे परिचय देंगे।

प्रत्येक स्केलर एलिमेंट को भ्रमण करने के लिए

बुनियादी for चक्र में, अर्रे के प्रत्येक स्केलर को भ्रमण करने के लिए, हमें n चक्र का उपयोग करना होगा for चक्र, ऊंची आयामवाले अर्रे के लिए लिखना कठिन हो सकता है।

उदाहरण

निम्नलिखित 3-D अर्रे को भ्रमण करें:

import numpy as np
arr = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])
for x in np.nditer(arr):
  print(x)

उदाहरण चलाएं

विभिन्न डेटा प्रकार के अर्रे को इटरेशन करने के लिए

हम इसका उपयोग कर सकते हैं op_dtypes पैरामीटर्स को पास करें और अपेक्षित डेटा प्रकार को पास करें, ताकि इटरेशन के दौरान एलिमेंटों के डेटा प्रकार को बदल सके।

NumPy अस्थायी रूप से एलीमेंट के डाटा प्रकार को बदलता नहीं है (एलीमेंट आयता में है), इसलिए इस कार्य को करने के लिए उसे कुछ अन्य स्थान की जरूरत होती है, इस अतिरिक्त स्थान को buffer कहते हैं, जो और nditer() इसे सक्रिय करके हम इसके लिए पारामीटर भेजते हैं flags=['buffered']

उदाहरण

अस्थायी रूप से आयता को चलाएं

import numpy as np
arr = np.array([1, 2, 3])
for x in np.nditer(arr, flags=['buffered'], op_dtypes=['S']):
  print(x)

उदाहरण चलाएं

अलग-अलग चबूतरे से इटरेशन करें

हम फ़िल्टरिंग का उपयोग कर सकते हैं और फिर इटरेशन कर सकते हैं。

उदाहरण

2D आयता के प्रत्येक स्केल एलीमेंट को चलाएँ, 1 एलीमेंट छोड़ें

import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
for x in np.nditer(arr[:, ::2]):
  print(x)

उदाहरण चलाएं

ndenumerate() का उपयोग करके एनुमरेट इटरेशन करें

एनुमरेट का अर्थ है एक एक चीज का उल्लेख करना

कभी, हम अनुक्रमण में एलीमेंट के अनुक्रम की जरूरत होती है, इस तरह के उपयोग के लिए ndenumerate() विधि。

उदाहरण

सबसे ऊपर 1D आयता एलीमेंट एनुमरेट करें

import numpy as np
arr = np.array([1, 2, 3])
for idx, x in np.ndenumerate(arr):
  print(idx, x)

उदाहरण चलाएं

उदाहरण

सबसे ऊपर 2D आयता एलीमेंट एनुमरेट करें

import numpy as np
arr = np.array([[1, 2, 3, 4], [5, 6, 7, 8]])
for idx, x in np.ndenumerate(arr):
  print(idx, x)

उदाहरण चलाएं