Python Numpy,基于数组中的数组的新数组

Python Numpy,基于数组中的数组的新数组,python,numpy,Python,Numpy,我在一个数组上循环提取数据,但速度太慢了。numpy中是否有一个函数可以更快地完成此操作?我必须根据数组中数组的值创建一个新数组 例如,使用美国制造的汽车创建一个阵列 input: array = [['ford', 'USA'], ['volkswagen', 'Germany'], ['jeep', 'USA']] output: new_array = [['ford', 'USA'], ['jeep', 'USA']] 假设数组是stringdtype,您可以将第二列

我在一个数组上循环提取数据,但速度太慢了。numpy中是否有一个函数可以更快地完成此操作?我必须根据数组中数组的值创建一个新数组

例如,使用美国制造的汽车创建一个阵列

    input: array = [['ford', 'USA'], ['volkswagen', 'Germany'], ['jeep', 'USA']]

    output: new_array = [['ford', 'USA'], ['jeep', 'USA']]

假设数组是stringdtype,您可以将第二列切掉,并与字符串
'USA'
进行比较,以得到一个布尔数组。然后,可以使用此布尔数组将索引编入数组,以选择有效行并提供所需的输出

因此,实施将是简单的-

array[array[:,1] == 'USA']

谢谢大家!@如果我想要一个基于两个值的结果,我会写它吗?例如,“吉普”和“美国”@elfving使用
np。在一维中,
@elfving还可以查看这些索引,然后使用这些索引简单地索引到列表中。