python - Numpy,基于数组中的数组的新数组

标签 python numpy

我正在循环一个数组来提取数据,但它太慢了。 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/

相关文章:

python - 如何使用 rpy2 将 R 数据帧转换回 Pandas?

python - Flask+uwsgi+nginx+centos 导入模块numpy报错

Python Tkinter。无法为程序的第二个窗口应用主题

python - 如何使用 matplotlib 绘制这样的图

python - 在 Pandas 数据框中按组过滤具有最小值的行

python - Pandas 计算每个范围之间的值的数量

python - 如何使用 numpy 在数组中使用 mod

python - 如何理解 numpy.nextafter 的结果

python - loadtxt 函数的隐藏错误

python - Bigtable 还是 Datastore 更适合在线应用程序存储和使用财务数据?