From d7608ec46647f127219a9ece2aab5a22704e360e Mon Sep 17 00:00:00 2001 From: Manmita Das <34617961+manmita@users.noreply.github.com> Date: Tue, 28 May 2024 16:15:12 +0530 Subject: [PATCH 1/3] Create concatenation-of-arrays.md --- contrib/numpy/concatenation-of-arrays.md | 195 +++++++++++++++++++++++ 1 file changed, 195 insertions(+) create mode 100644 contrib/numpy/concatenation-of-arrays.md diff --git a/contrib/numpy/concatenation-of-arrays.md b/contrib/numpy/concatenation-of-arrays.md new file mode 100644 index 0000000..a0c5051 --- /dev/null +++ b/contrib/numpy/concatenation-of-arrays.md @@ -0,0 +1,195 @@ +# Concatenation of Arrays + +Concatenation of arrays in NumPy refers to combining multiple arrays into a single array, either along existing axes or by adding new axes. NumPy provides several functions for this purpose. + +# Functions of Concatenation + +## np.concatenate + +Joins two or more arrays along an existing axis. + +### Syntax + +```python +numpy.concatenate((arr1, arr2, ...), axis) +``` + +Args: +- arr1, arr2, ...: Sequence of arrays to concatenate. +- axis: Axis along which the arrays will be joined. Default is 0. + +### Example + +```python +import numpy as np +#creating 2 arrays +arr1 = np.array([1 2 3],[7 8 9]) +arr2 = np.array([4 5 6],[10 11 12]) + +#concatenate along axis 0 +result_1 = np.concatenate((arr1, arr2), axis=0) +print("Concatenation along axis 0:") +print(result_1) +""" Output- Concatenation along axis 0: +[[ 1 2 3] + [ 7 8 9] + [ 4 5 6] + [10 11 12]] """ + +#concatenate along axis 1 +result_2 = np.concatenate((arr1, arr2), axis=1) +print("Concatenation along axis 1:") +print(result_2) +""" Output- Concatenation along axis 1: +[[ 1 2 3 4 5 6 ] + [ 7 8 9 10 11 12]] """ + +``` +## np.vstack + +Vertical stacking of arrays (row-wise). + +### Syntax + +```python +numpy.vstack(arrays) +``` + +Args: +- arrays: Sequence of arrays to stack. + +### Example +```python +import numpy as np +#create arrays +arr1= np.array([1 2 3], [7 8 9]) +arr2 = np.array([4 5 6],[10 11 12]) + +result = np.vstack((arr1, arr2)) +print(result) +"""output- +[[ 1 2 3] + [ 7 8 9] + [ 4 5 6] + [10 11 12]] """ +``` +## 3. np.hstack + +Stacks arrays horizontally (column-wise). + +### Syntax + +```python +numpy.hstack(arrays) +``` + +Args: +- arrays: Sequence of arrays to stack. + +### Example + +```python +import numpy as np +#create arrays +arr1= np.array([1 2 3], [7 8 9]) +arr2 = np.array([4 5 6],[10 11 12]) + +result = np.hstack((arr1, arr2)) +print(result) +"""output- +[[ 1 2 3] [ 4 5 6] + [ 7 8 9] [10 11 12]] """ +``` + +## np.dstack + +Stacks arrays along the third axis (depth-wise). + +### Syntax + +```python +numpy.dstack(arrays) +``` + +- arrays: Sequence of arrays to stack. + +### Example + +```python +import numpy as np +#create arrays +arr1= np.array([1 2 3], [7 8 9]) +arr2 = np.array([4 5 6],[10 11 12]) + +result = np.dstack((arr1, arr2)) +print(result) +""" output- +[[[ 1 4] + [ 2 5] + [ 3 6]] + + [[ 7 10] + [ 8 11] + [ 9 12]]] """ +``` + +## np.stack + +Joins a sequence of arrays along a new axis. + +```python +numpy.stack(arrays, axis) +``` + +Args: +- arrays: Sequence of arrays to stack. + +### Example + +```python +import numpy as np +#create arrays +arr1= np.array([1 2 3], [7 8 9]) +arr2 = np.array([4 5 6],[10 11 12]) + +result = np.stack((arr1, arr2), axis=0) +print(result) +""" output- +[[[ 1 2 3] + [ 7 8 9]] + + [[ 4 5 6] + [10 11 12]]] """ +``` + +# Concatenation with Mixed Dimensions + +When concatenating arrays with different shapes, it's often necessary to reshape them to have compatible dimensions. + +## Example + +```python +arr1 = np.array([[1, 2, 3], [4, 5, 6]]) +arr2 = np.array([7, 8, 9]) + +# Concatenate along axis 0 +result_0= np.concatenate((arr1, arr2[np.newaxis, :]), axis=0) +print("Concatenation along axis 0:") +print(result_0) +""" output- +Concatenation along axis 0: +[[1 2 3] + [4 5 6] + [7 8 9]] """ + +# Concatenate along axis 1 +result_1 = np.concatenate((arr1, arr2[:, np.newaxis]), axis=1) +print("\nConcatenation along axis 1:") +print(result_1) +""" output- +Concatenation along axis 1: +[[1 2 3 7] + [4 5 6 8]] """ +``` + + From 81992560369b3c2e8a6e940ab14c35797623abcb Mon Sep 17 00:00:00 2001 From: Manmita Das <34617961+manmita@users.noreply.github.com> Date: Tue, 28 May 2024 16:16:08 +0530 Subject: [PATCH 2/3] Update index.md --- contrib/numpy/index.md | 1 + 1 file changed, 1 insertion(+) diff --git a/contrib/numpy/index.md b/contrib/numpy/index.md index b2d459a..fb07865 100644 --- a/contrib/numpy/index.md +++ b/contrib/numpy/index.md @@ -8,3 +8,4 @@ - [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) +- [Concatenation of Arrays](concatenation-of-arrays.md) From a904e73c65f8bd1941794fe9a87295b4c0493f5e Mon Sep 17 00:00:00 2001 From: Ankit Mahato Date: Fri, 31 May 2024 06:07:45 +0530 Subject: [PATCH 3/3] Update concatenation-of-arrays.md --- contrib/numpy/concatenation-of-arrays.md | 90 ++++++++++++++++-------- 1 file changed, 59 insertions(+), 31 deletions(-) diff --git a/contrib/numpy/concatenation-of-arrays.md b/contrib/numpy/concatenation-of-arrays.md index a0c5051..bf27512 100644 --- a/contrib/numpy/concatenation-of-arrays.md +++ b/contrib/numpy/concatenation-of-arrays.md @@ -20,31 +20,39 @@ Args: ### Example +#### Concatenate along axis 0 + ```python import numpy as np #creating 2 arrays arr1 = np.array([1 2 3],[7 8 9]) arr2 = np.array([4 5 6],[10 11 12]) -#concatenate along axis 0 result_1 = np.concatenate((arr1, arr2), axis=0) -print("Concatenation along axis 0:") print(result_1) -""" Output- Concatenation along axis 0: +``` + +#### Output +``` [[ 1 2 3] [ 7 8 9] [ 4 5 6] - [10 11 12]] """ - -#concatenate along axis 1 -result_2 = np.concatenate((arr1, arr2), axis=1) -print("Concatenation along axis 1:") -print(result_2) -""" Output- Concatenation along axis 1: -[[ 1 2 3 4 5 6 ] - [ 7 8 9 10 11 12]] """ - + [10 11 12]] ``` + +#### Concatenate along axis 1 + +```python +result_2 = np.concatenate((arr1, arr2), axis=1) +print(result_2) +``` + +#### Output +``` +[[ 1 2 3 4 5 6 ] + [ 7 8 9 10 11 12]] +``` + ## np.vstack Vertical stacking of arrays (row-wise). @@ -59,6 +67,7 @@ Args: - arrays: Sequence of arrays to stack. ### Example + ```python import numpy as np #create arrays @@ -67,12 +76,16 @@ arr2 = np.array([4 5 6],[10 11 12]) result = np.vstack((arr1, arr2)) print(result) -"""output- +``` + +#### Output +``` [[ 1 2 3] [ 7 8 9] [ 4 5 6] - [10 11 12]] """ + [10 11 12]] ``` + ## 3. np.hstack Stacks arrays horizontally (column-wise). @@ -96,9 +109,12 @@ arr2 = np.array([4 5 6],[10 11 12]) result = np.hstack((arr1, arr2)) print(result) -"""output- +``` + +#### Output +``` [[ 1 2 3] [ 4 5 6] - [ 7 8 9] [10 11 12]] """ + [ 7 8 9] [10 11 12]] ``` ## np.dstack @@ -123,14 +139,17 @@ arr2 = np.array([4 5 6],[10 11 12]) result = np.dstack((arr1, arr2)) print(result) -""" output- +``` + +#### Output +``` [[[ 1 4] [ 2 5] [ 3 6]] [[ 7 10] [ 8 11] - [ 9 12]]] """ + [ 9 12]]] ``` ## np.stack @@ -154,12 +173,15 @@ arr2 = np.array([4 5 6],[10 11 12]) result = np.stack((arr1, arr2), axis=0) print(result) -""" output- +``` + +#### Output +``` [[[ 1 2 3] [ 7 8 9]] [[ 4 5 6] - [10 11 12]]] """ + [10 11 12]]] ``` # Concatenation with Mixed Dimensions @@ -168,28 +190,34 @@ When concatenating arrays with different shapes, it's often necessary to reshape ## Example +#### Concatenate along axis 0 + ```python arr1 = np.array([[1, 2, 3], [4, 5, 6]]) arr2 = np.array([7, 8, 9]) -# Concatenate along axis 0 result_0= np.concatenate((arr1, arr2[np.newaxis, :]), axis=0) -print("Concatenation along axis 0:") print(result_0) -""" output- -Concatenation along axis 0: +``` + +#### Output +``` [[1 2 3] [4 5 6] - [7 8 9]] """ + [7 8 9]] +``` -# Concatenate along axis 1 +#### Concatenate along axis 1 + +```python result_1 = np.concatenate((arr1, arr2[:, np.newaxis]), axis=1) -print("\nConcatenation along axis 1:") print(result_1) -""" output- -Concatenation along axis 1: +``` + +#### Output +``` [[1 2 3 7] - [4 5 6 8]] """ + [4 5 6 8]] ```