gpt4 book ai didi

python - 删除 numpy 数组中第一次出现的元素

转载 作者:行者123 更新时间:2023-12-05 05:29:49 25 4
gpt4 key购买 nike

我有一个 numpy 数组:

a = np.array([-1,2,3,-1,5,-2,2,9])

我只想在数组中保留出现次数超过 2 次的值,所以结果应该是:

a = np.array([-1,2,-1,2])

有没有办法只使用 numpy 来做到这一点?我有一个使用字典和字典过滤的解决方案,但这有点慢,我想知道是否有仅使用 numpy 的更快的解决方案。

谢谢!

最佳答案

import numpy as np
a = np.array([-1, 2, 3, -1, 5, -2, 2, 9])
values, counts = np.unique(a, return_counts=True)
values_filtered = values[counts >= 2]
result = a[np.isin(a, values_filtered)]
print(result) # return [-1 2 -1 2]

关于python - 删除 numpy 数组中第一次出现的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74840692/

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