Examples of how to add a new column of nan values in a matrix with numpy:
Create an array
Let's first create an array with numpy
import numpy as npA = np.arange(20)A = A.reshape(5,4)A = A.astype('float64')
returns
array([[ 0., 1., 2., 3.],[ 4., 5., 6., 7.],[ 8., 9., 10., 11.],[12., 13., 14., 15.],[16., 17., 18., 19.]])
Create a column of nan
new_col = np.empty((A.shape[0],1))new_col.fill(np.nan)new_col
returns
array([[nan],[nan],[nan],[nan],[nan]])
Add a column of nans values in first column
new_A = np.c_[new_col,A]new_A
returns
array([[nan, 0., 1., 2., 3.],[nan, 4., 5., 6., 7.],[nan, 8., 9., 10., 11.],[nan, 12., 13., 14., 15.],[nan, 16., 17., 18., 19.]])
Add a column of nans in last column
new_A = np.c_[A,new_col]new_A
returns
array([[ 0., 1., 2., 3., nan],[ 4., 5., 6., 7., nan],[ 8., 9., 10., 11., nan],[12., 13., 14., 15., nan],[16., 17., 18., 19., nan]])
Add a column of nans for a given index
new_A = np.insert(A,2,new_col.T,axis=1)new_A
returns
array([[ 0., 1., nan, 2., 3.],[ 4., 5., nan, 6., 7.],[ 8., 9., nan, 10., 11.],[12., 13., nan, 14., 15.],[16., 17., nan, 18., 19.]])
References
- c_ | docs.scipy.org
- numpy.insert | docs.scipy.org
- How to add an extra column to a NumPy array | stackoverflow
- numpy.random.randint | docs.scipy.org
