Home > Net >  Fill empty numpy array inside for loop
Fill empty numpy array inside for loop

Time:10-25

I have a 2-D numpy array X with shape (100, 4). I want to find the sum of each row of that array and store it inside a new numpy array x_new with shape (100,0). What I've done so far doesn't work. Any suggestions ?. Below is my approach.

x_new = np.empty([100,0])
for i in range(len(X)):
    array = np.append(x_new, sum(X[i]))

CodePudding user response:

Using the sum method on a 2d array:

In [8]: x = np.arange(12).reshape(3,4)
In [9]: x
Out[9]: 
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11]])
In [10]: x.sum(axis=1)
Out[10]: array([ 6, 22, 38])
In [12]: x.sum(axis=1, keepdims=True)
Out[12]: 
array([[ 6],
       [22],
       [38]])
In [13]: _.shape
Out[13]: (3, 1)

reference: https://numpy.org/doc/stable/reference/generated/numpy.sum.html

  • Related