Python | Ways to add row/columns in numpy array
Given numpy array, the task is to add rows/columns basis on requirements to numpy array. Let’s see a few examples of this problem.
Method #1: Using np.hstack() method
# Python code to demonstrate # adding columns in numpy array import numpy as np ini_array = np.array([[ 1 , 2 , 3 ], [ 45 , 4 , 7 ], [ 9 , 6 , 10 ]]) # printing initial array print ( "initial_array : " , str (ini_array)); # Array to be added as column column_to_be_added = np.array([ 1 , 2 , 3 ]) # Adding column to numpy array result = np.hstack((ini_array, np.atleast_2d(column_to_be_added).T)) # printing result print ( "resultant array" , str (result)) |
Output:
initial_array : [[ 1 2 3] [45 4 7] [ 9 6 10]] resultant array [[ 1 2 3 1] [45 4 7 2] [ 9 6 10 3]]
Method #2: Using column_stack() method
# python code to demonstrate # adding columns in numpy array import numpy as np ini_array = np.array([[ 1 , 2 , 3 ], [ 45 , 4 , 7 ], [ 9 , 6 , 10 ]]) # printing initial array print ( "initial_array : " , str (ini_array)); # Array to be added as column column_to_be_added = np.array([ 1 , 2 , 3 ]) # Adding column to numpy array result = np.column_stack((ini_array, column_to_be_added)) # printing result print ( "resultant array" , str (result)) |
Output:
initial_array : [[ 1 2 3] [45 4 7] [ 9 6 10]] resultant array [[ 1 2 3 1] [45 4 7 2] [ 9 6 10 3]]
Method #3: Using np.vstack() method
- Python3
# python code to demonstrate # adding rows in numpy array import numpy as np ini_array = np.array([[ 1 , 2 , 3 ], [ 45 , 4 , 7 ], [ 9 , 6 , 10 ]]) # printing initial array print ( "initial_array : " , str (ini_array)); # Array to be added as row row_to_be_added = np.array([ 1 , 2 , 3 ]) # Adding row to numpy array result = np.vstack ((ini_array, row_to_be_added) ) # printing result print ( "resultant array" , str (result)) |
Output:
initial_array : [[ 1 2 3] [45 4 7] [ 9 6 10]] resultant array [[ 1 2 3] [45 4 7] [ 9 6 10] [ 1 2 3]]
Sometimes we have an empty array and we need to append rows in it. Numpy provides the function to append a row to an empty Numpy array using numpy.append() function.
Syntax : numpy.append(arr, values, axis=None)
Case 1: Adding new rows to an empty 2-D array
- Python3
# importing Numpy package import numpy as np # creating an empty 2d array of int type empt_array = np.empty(( 0 , 2 ), int ) print ( "Empty array:" ) print (empt_array) # adding two new rows to empt_array # using np.append() empt_array = np.append(empt_array, np.array([[ 10 , 20 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 40 , 50 ]]), axis = 0 ) print ( "\nNow array is:" ) print (empt_array) |
Empty array: [] Now array is: [[10 20] [40 50]]
Case 2: Adding new rows to an empty 3-D array
- Python3
# importing Numpy package import numpy as np # creating an empty 3d array of int type empt_array = np.empty(( 0 , 3 ), int ) print ( "Empty array:" ) print (empt_array) # adding three new rows to empt_array # using np.append() empt_array = np.append(empt_array, np.array([[ 10 , 20 , 40 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 40 , 50 , 55 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 40 , 50 , 55 ]]), axis = 0 ) print ( "\nNow array is:" ) print (empt_array) |
Empty array: [] Now array is: [[10 20 40] [40 50 55] [40 50 55]]
Case 3: Adding new rows to an empty 4-D array
- Python3
# importing Numpy package import numpy as np # creating an empty 4d array of int type empt_array = np.empty(( 0 , 4 ), int ) print ( "Empty array:" ) print (empt_array) # adding four new rows to empt_array # using np.append() empt_array = np.append(empt_array, np.array([[ 100 , 200 , 400 , 888 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 405 , 500 , 550 , 558 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 404 , 505 , 555 , 145 ]]), axis = 0 ) empt_array = np.append(empt_array, np.array([[ 44 , 55 , 550 , 150 ]]), axis = 0 ) print ( "\nNow array is:" ) print (empt_array) |
Empty array: [] Now array is: [[100 200 400 888] [405 500 550 558] [404 505 555 145] [ 44 55 550 150]]
Last Updated on November 13, 2021 by admin