gpt4 book ai didi

python - Numpy:查找一个数组中出现在另一个数组中的元素的索引

转载 作者:太空狗 更新时间:2023-10-29 22:06:40 28 4
gpt4 key购买 nike

我有两个一维数组,我想知道一个数组中的元素是否出现在另一个数组中。

例如:

import numpy as np
A = np.array([ 1, 48, 50, 78, 85, 97])
B = np.array([38, 43, 50, 62, 78, 85])

我要:

C = [2,3,4] # since 50 in second array occurs in first array at index 2, 
# similarly 78 in second array occurs in first array in index 3,
# similarly for 85, it is index 4

我试过:

accuracy = np.searchsorted(A, B)

但它给我带来了不良结果。

最佳答案

您可以使用 np.wherenp.in1d:

>>> np.where(np.in1d(A, B))[0]
array([2, 3, 4])

np.in1d(A, B) 返回一个 bool 数组,指示是否在 B 中找到 A 的每个值。 np.where 返回 True 值的索引。 (如果您的数组未排序,这也适用。)

关于python - Numpy:查找一个数组中出现在另一个数组中的元素的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28901311/

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