diff --git a/contrib/numpy/array-iteration.md b/contrib/numpy/array-iteration.md new file mode 100644 index 0000000..b0a499f --- /dev/null +++ b/contrib/numpy/array-iteration.md @@ -0,0 +1,120 @@ +# NumPy Array Iteration + +Iterating over arrays in NumPy is a common task when processing data. NumPy provides several ways to iterate over elements of an array efficiently. +Understanding these methods is crucial for performing operations on array elements effectively. + +## 1. Basic Iteration + +- Iterating using basic `for` loop. + +### Single-dimensional array + +Iterating over a single-dimensional array is straightforward using a basic `for` loop + +```python +import numpy as np + +arr = np.array([1, 2, 3, 4, 5]) +for i in arr: + print(i) +``` + +#### Output + +```python +1 +2 +3 +4 +5 +``` + +### Multi-dimensional array + +Iterating over multi-dimensional arrays, each iteration returns a sub-array along the first axis. + +```python +marr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) + +for arr in marr: + print(arr) +``` + +#### Output + +```python +[1 2 3] +[4 5 6] +[7 8 9] +``` + +## 2. Iterating with `nditer` + +- `nditer` is a powerful iterator provided by NumPy for iterating over multi-dimensional arrays. +- In each interation it gives each element. + +```python +import numpy as np + +arr = np.array([[1, 2, 3], [4, 5, 6]]) +for i in np.nditer(arr): + print(i) +``` + +#### Output + +```python +1 +2 +3 +4 +5 +6 +``` + +## 3. Iterating with `ndenumerate` + +- `ndenumerate` allows you to iterate with both the index and the value of each element. +- It gives index and value as output in each iteration + +```python +import numpy as np + +arr = np.array([[1, 2], [3, 4]]) +for index,value in np.ndenumerate(arr): + print(index,value) +``` + +#### Output + +```python +(0, 0) 1 +(0, 1) 2 +(1, 0) 3 +(1, 1) 4 +``` + +## 4. Iterating with flat + +- The `flat` attribute returns a 1-D iterator over the array. + +```python +import numpy as np + +arr = np.array([[1, 2], [3, 4]]) +for element in arr.flat: + print(element) +``` + +#### Output + +```python +1 +2 +3 +4 +``` + +Understanding the various ways to iterate over NumPy arrays can significantly enhance your data processing efficiency. + +Whether you are working with single-dimensional or multi-dimensional arrays, NumPy provides versatile tools to iterate and manipulate array elements effectively. diff --git a/contrib/numpy/index.md b/contrib/numpy/index.md index fb07865..04b4748 100644 --- a/contrib/numpy/index.md +++ b/contrib/numpy/index.md @@ -8,4 +8,5 @@ - [Loading Arrays from Files](loading_arrays_from_files.md) - [Saving Numpy Arrays into FIles](saving_numpy_arrays_to_files.md) - [Sorting NumPy Arrays](sorting-array.md) +- [NumPy Array Iteration](array-iteration.md) - [Concatenation of Arrays](concatenation-of-arrays.md)