Combine arrays with np.concatenate, vstack, hstack, stack, and column_stack. Split with np.split, hsplit, vsplit.
Stack along existing axis
import numpy as np
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(np.concatenate([a, b]))
New axis stacking
np.stack([a, b], axis=0)— new dimensionnp.vstack— rows on top of rowsnp.hstack— columns beside columnsnp.column_stack— treat 1D as columns
Splitting
import numpy as np
a = np.arange(9).reshape(3, 3)
parts = np.split(a, 3, axis=1)
print([p.shape for p in parts])
Important interview questions and answers
- Q: stack vs concatenate?
A: stack creates new axis; concatenate joins along existing axis. - Q: column_stack use case?
A: Build design matrix from feature vectors.
Self-check
- Stack two 1D arrays as rows of 2×3 matrix.
- Split array into three equal parts along axis 0.
Tip: column_stack builds feature matrices from 1D vectors.
Interview prep
- stack vs concat?
stack adds new axis; concatenate joins along existing axis.
- vstack?
Stack arrays as rows.