In pure Python you can grow matrices column by column pretty easily:
data = [] for i in something: newColumn = getColumnDataAsList(i) data.append(newColu
The hstack can work on zero sized arrays:
import numpy as np N = 5 M = 15 a = np.ndarray(shape = (N, 0)) for i in range(M): b = np.random.rand(N, 1) a = np.hstack((a, b))