Given N 2d numpy arrays, is there a neat way in which I can 'stack' or 'bolt' them together on the diagonal, filling any new slots with 0? E.g. given:
arr1 = np.array([[1, 2],
[3, 4]])
arr2 = np.array([[9, 8, 7],
[6, 5, 4],
[3, 2, 1]])
I want to create:
arr = np.array([[1, 2, 0, 0, 0],
[3, 4, 0, 0, 0],
[0, 0, 9, 8, 7],
[0, 0, 6, 5, 4],
[0, 0, 3, 2, 1]])