TheGrapeBeyond
TheGrapeBeyond

Reputation: 563

Create random numpy matrix of same size as another.

This question here was useful, but mine is slightly different.

I am trying to do something simple here, I have a numpy matrix A, and I simply want to create another numpy matrix B, of the same shape as A, but I want B to be created from numpy.random.randn() How can this be done? Thanks.

Upvotes: 20

Views: 24614

Answers (1)

Chris Mueller
Chris Mueller

Reputation: 6680

np.random.randn takes the shape of the array as its input which you can get directly from the shape property of the first array. You have to unpack a.shape with the * operator in order to get the proper input for np.random.randn.

a = np.zeros([2, 3])
print(a.shape)
# outputs: (2, 3)
b = np.random.randn(*a.shape)
print(b.shape)
# outputs: (2, 3)

Upvotes: 52

Related Questions