首页 >后端开发 >Python教程 >如何有效地查找 NumPy 数组中的唯一行?

如何有效地查找 NumPy 数组中的唯一行?

Linda Hamilton
Linda Hamilton原创
2024-12-30 06:37:08312浏览

How Can I Efficiently Find Unique Rows in a NumPy Array?

在 NumPy 数组中查找唯一行:一种高效的解决方案

在数据分析和处理中,经常需要从其中提取唯一值给定的数据集。在这种情况下,让我们考虑在 NumPy 数组中查找唯一行的问题。

目标:

给定一个 NumPy 数组,目标是识别并获取仅包含原始数组中唯一行的数组。

高效解决方案:

从 NumPy 版本 1.13 开始,引入了一种用于查找唯一行的有效解决方案。通过利用 np.unique 函数并指定 axis 参数,我们可以轻松实现这一点:

unique_rows = np.unique(original_array, axis=0)

通过将 axis 参数设置为 0,我们指示 NumPy 独立分析原始数组的每一行。此操作按元素比较行并返回一个仅包含唯一行的新数组。

示例:

考虑以下 NumPy 数组 a:

a = np.array([[1, 1, 1, 0, 0, 0],
               [0, 1, 1, 1, 0, 0],
               [0, 1, 1, 1, 0, 0],
               [1, 1, 1, 0, 0, 0],
               [1, 1, 1, 1, 1, 0]])

要从 a 中获取唯一行,我们可以使用以下命令code:

unique_rows = np.unique(a, axis=0)

这将生成一个新的数组 unique_rows,其中包含以下行:

unique_rows = np.array([[1, 1, 1, 0, 0, 0],
                         [0, 1, 1, 1, 0, 0],
                         [1, 1, 1, 1, 1, 0]])

我们可以看到,原始数组中的唯一行已成功提取。

以上是如何有效地查找 NumPy 数组中的唯一行?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn