gpt4 book ai didi

python - 删除 numpy 数组的重复行

转载 作者:IT老高 更新时间:2023-10-28 21:59:39 34 4
gpt4 key购买 nike

如何删除二维 numpy 数组的重复行?

data = np.array([[1,8,3,3,4],
[1,8,9,9,4],
[1,8,3,3,4]])

答案应该是这样的:

ans = array([[1,8,3,3,4],
[1,8,9,9,4]])

如果有两行相同,那么我想删除一个“重复”行。

最佳答案

您可以使用 numpy unique。由于您想要唯一的行,我们需要将它们放入元组中:

import numpy as np

data = np.array([[1,8,3,3,4],
[1,8,9,9,4],
[1,8,3,3,4]])

只需将 np.unique 应用于 data 数组将导致:

>>> uniques
array([1, 3, 4, 8, 9])

打印出列表中的唯一元素。因此将它们放入元组会导致:

new_array = [tuple(row) for row in data]
uniques = np.unique(new_array)

哪个打印:

>>> uniques
array([[1, 8, 3, 3, 4],
[1, 8, 9, 9, 4]])

更新

在新版本中,需要设置np.unique(data, axis=0)

关于python - 删除 numpy 数组的重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31097247/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com