我循环遍历一个数组以提取数据,但它太慢了。 numpy中是否有更快的功能?我必须根据数组中数组的值创建一个新数组。
例如,创建一个在美国制造汽车的阵列。
input: array = [['ford', 'USA'], ['volkswagen', 'Germany'], ['jeep', 'USA']]
output: new_array = [['ford', 'USA'], ['jeep', 'USA']]
答案 0 :(得分:1)
假设有一个字符串dtype数组,你可以切出第二列并与字符串'USA'
进行比较以得到一个布尔数组。然后可以使用此布尔数组使用boolean-indexing
索引到数组中以选择有效行并为我们提供所需的输出。
因此,实施将简单地 -
array[array[:,1] == 'USA']