Python numpy将字符串数组转换为整数或布尔值(用于屏蔽)

Python numpy将字符串数组转换为整数或布尔值(用于屏蔽),python,arrays,string,numpy,Python,Arrays,String,Numpy,我是Python新手,我面临将字符串数组转换为数字的挑战。 我的数据是从一组更大的数字和字符串中提取出来的。它看起来像: array([b'Single', b'', b'', b'', b'', b'Single', b'Single', b'', b'Single', ...]) 我想用这个数据来创建一个掩码,基本上,如果“Single”存在,我希望有一个False或0,这样我就可以屏蔽原始数据集。我不知道为什么会有b 我发现类似的问题也得到了回答,但不是字符串到数字或字符串到布尔值,而是

我是Python新手,我面临将字符串数组转换为数字的挑战。 我的数据是从一组更大的数字和字符串中提取出来的。它看起来像:

array([b'Single', b'', b'', b'', b'', b'Single', b'Single',
b'', b'Single', ...])
我想用这个数据来创建一个掩码,基本上,如果“Single”存在,我希望有一个False或0,这样我就可以屏蔽原始数据集。我不知道为什么会有b

我发现类似的问题也得到了回答,但不是字符串到数字或字符串到布尔值,而是将“数字字符串”反转或转换为整数

我最接近的解决方案是:

np.where(modMask = 'Single' [False, True])
但是我得到了一个错误:

TypeError                  Traceback (most recent call last)

<ipython-input-64-4ad8a8f10b9b> in <module>()
----> 1 np.where(modMask = 'Single' [False, True])

TypeError: string indices must be integers
TypeError回溯(最近一次调用)
在()
---->1 np.其中(modMask='Single'[假,真])
TypeError:字符串索引必须是整数
您可以使用

在哪里

你可以用

在哪里


你可以做
bool\u数组=a.astype(object)!='单个“
,例如
modMask!=b'Single'
?您可以执行
bool\u数组=a.astype(object)!='单个“
,例如
modMask!=b‘单身’
import numpy as np

def f(x):
    return not x == b'Single'

vfunc = np.vectorize(f)
x = np.array([b'Single', b'', b'', b'', b'', b'Single'])

result = vfunc(x)
result = [False  True  True  True  True False]