Reputation: 77
I have an array in numpy, which was generated using np.array() from a python list so my entries are strings, but some of the values are blank. Here is an example array:
['1', '1', '1', '1']
['1', '1', '', '1']
['1', '1', '1', '1']
['1', '', '1', '1']
There is no 'NaN' or 'None', it is blank. I want to be able to fill all the blank cells in a particular column with the same value.
Upvotes: 6
Views: 12085
Reputation: 4894
You can use numpy.where()
to achieve this.
In [8]: arr = numpy.array(['','1','2','3',''])
In [9]: arr[numpy.where(arr=='')] = '0'
In [10]: arr
Out[10]:
array(['0', '1', '2', '3', '0'],
dtype='|S1')
Edit As @mgilson pointed out, you could just do:
arr[arr==''] = '0'
Upvotes: 6