我正在循环一个数组来提取数据,但它太慢了。 numpy 中是否有一个函数可以更快地完成此操作?我必须根据数组内数组的值创建一个新数组。
例如,创建一个包含美国制造的汽车的数组。
input: array = [['ford', 'USA'], ['volkswagen', 'Germany'], ['jeep', 'USA']]
output: new_array = [['ford', 'USA'], ['jeep', 'USA']]
最佳答案
假设一个字符串数据类型的数组,您可以切出第二列并与字符串 'USA'
进行比较以获取 bool 数组。然后,该 bool 数组可用于使用 boolean-indexing
对数组进行索引。选择有效行并为我们提供所需的输出。
因此,实现将很简单 -
array[array[:,1] == 'USA']
关于python - Numpy,基于数组中的数组的新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40305734/