是否有一种原生的numpy方式来转换布尔字符串表示的数组,例如:
['True','False','True','False']
Run Code Online (Sandbox Code Playgroud)
对于我可以用于屏蔽/索引的实际布尔数组?我可以做一个for循环并重建数组,但对于大型数组,这很慢.
您应该可以进行布尔比较,IIUC,无论dtype是字符串还是object:
>>> a = np.array(['True', 'False', 'True', 'False'])
>>> a
array(['True', 'False', 'True', 'False'],
dtype='|S5')
>>> a == "True"
array([ True, False, True, False], dtype=bool)
Run Code Online (Sandbox Code Playgroud)
要么
>>> a = np.array(['True', 'False', 'True', 'False'], dtype=object)
>>> a
array(['True', 'False', 'True', 'False'], dtype=object)
>>> a == "True"
array([ True, False, True, False], dtype=bool)
Run Code Online (Sandbox Code Playgroud)