Say I have two matrices A
and B
. For example,
A = numpy.zeros((5,5)) B = np.eye(5)
Is there a way to append A
and B
?
Advertisement
Answer
It sounds to me like you’re looking for np.hstack
:
>>> import numpy as np >>> a = np.zeros((5, 5)) >>> b = np.eye(5) >>> np.hstack((a, b)) array([[ 0., 0., 0., 0., 0., 1., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0., 0., 1., 0., 0., 0.], [ 0., 0., 0., 0., 0., 0., 0., 1., 0., 0.], [ 0., 0., 0., 0., 0., 0., 0., 0., 1., 0.], [ 0., 0., 0., 0., 0., 0., 0., 0., 0., 1.]])
np.vstack
will work if you want to stack them downward:
>>> np.vstack((a, b)) array([[ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 0., 0., 0., 0., 0.], [ 1., 0., 0., 0., 0.], [ 0., 1., 0., 0., 0.], [ 0., 0., 1., 0., 0.], [ 0., 0., 0., 1., 0.], [ 0., 0., 0., 0., 1.]])