Numpy数组,填充单个列的空值

时间:2013-12-11 06:30:31

标签: python numpy

我有一个numpy数组,它是使用python列表中的np.array()生成的,所以我的条目是字符串,但有些值是空白的。这是一个示例数组:

['1', '1', '1', '1']
['1', '1', '', '1']
['1', '1', '1', '1']
['1', '', '1', '1']

没有'NaN'或'None',它是空白的。我希望能够使用相同的值填充特定列中的所有空白单元格。

1 个答案:

答案 0 :(得分:5)

您可以使用numpy.where()来实现此目的。

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')

编辑正如@mgilson指出的那样,你可以这样做:

arr[arr==''] = '0'