NumPy Joining Array

🔗 NumPy Joining Arrays (Complete Guide)

Joining (or concatenating) arrays means combining two or more arrays into a single array.
NumPy provides multiple functions to join arrays:

✔ concatenate()
✔ stack()
✔ hstack()
✔ vstack()
✔ dstack()
✔ column_stack()


✅ 1. Joining Using np.concatenate()

import numpy as np

arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

result = np.concatenate((arr1, arr2))
print(result)

Output:

[1 2 3 4 5 6]

✔ Works for 1D, 2D, 3D arrays
✔ Must match dimension size except along joining axis.


🔹 Concatenate 2D Arrays

arr1 = np.array([[1,2],[3,4]])
arr2 = np.array([[5,6],[7,8]])

print(np.concatenate((arr1, arr2), axis=0)) # Vertical
print(np.concatenate((arr1, arr2), axis=1)) # Horizontal


✅ 2. Joining Using stack()

Stack arrays along a new axis:

arr1 = np.array([1,2,3])
arr2 = np.array([4,5,6])

result = np.stack((arr1, arr2))
print(result)

Output:

[[1 2 3]
[4 5 6]]


🔹 Using axis

print(np.stack((arr1, arr2), axis=1))

Output:

[[1 4]
[2 5]
[3 6]]


✅ 3. hstack() — Join Horizontally (Row-wise)

arr1 = np.array([1,2,3])
arr2 = np.array([4,5,6])

print(np.hstack((arr1, arr2)))

Output:

[1 2 3 4 5 6]

✅ 4. vstack() — Join Vertically (Column-wise)

arr1 = np.array([1,2,3])
arr2 = np.array([4,5,6])

print(np.vstack((arr1, arr2)))

Output:

[[1 2 3]
[4 5 6]]


✅ 5. dstack() — Join Depth-wise (3D stacking)

arr1 = np.array([1,2,3])
arr2 = np.array([4,5,6])

print(np.dstack((arr1, arr2)))

Output:

[[[1 4]
[2 5]
[3 6]]
]

✅ 6. column_stack() — Stack Column Format

arr1 = np.array([1,2,3])
arr2 = np.array([4,5,6])

print(np.column_stack((arr1, arr2)))

Output:

[[1 4]
[2 5]
[3 6]]


🧠 Summary Table of Joining Methods

Function Type of Join Result
concatenate() Join along existing axis Flexible
stack() Create new dimension 2D/3D stacking
hstack() Horizontal stacking Side-by-side
vstack() Vertical stacking Top-bottom
dstack() Depth stacking 3D
column_stack() Column-wise stacking Matrix style

🎯 Example Practice

arrA = np.arange(1,6)
arrB = np.arange(6,11)

print(np.hstack((arrA, arrB)))
print(np.vstack((arrA, arrB)))
print(np.stack((arrA, arrB), axis=1))

CodeCapsule

Sanjit Sinha — Web Developer | PHP • Laravel • CodeIgniter • MySQL • Bootstrap Founder, CodeCapsule — Student projects & practical coding guides. Email: info@codecapsule.in • Website: CodeCapsule.in

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *