bloodbat007 发表于 2022-9-29 08:34:56

numpy数据查找问题

a=np.array([,
            ,
            ])

b=np.array([,
            ])

a,b内的数据为随机的
用什么算法能最快的从a中查找到b

阿奇_o 发表于 2022-9-29 08:34:57

本帖最后由 阿奇_o 于 2022-9-29 15:03 编辑

怎么才算最快呢?。。不知道是不是“最快”,仅供参考:
stmt = """\
a=np.array([,,])
b=np.array([,])
def isInA(a, b):
    af, bf = a.flatten(), b.flatten()
    #return sum(map(lambda _: _ in af, bf)) == len(bf)
    return all(map(lambda _: _ in af, bf))

isInA(a, b)
"""
import timeit as t
t.timeit(stmt, setup="import numpy as np", number=1000)
0.019886699999915436

ps:如果改为 随机创建类似大小的a,b,大概要 0.04 秒   (当然还要看你的a,b具体是怎样的范围条件,以及硬件资源)

bloodbat007 发表于 2022-9-29 19:35:05

阿奇_o 发表于 2022-9-29 14:21
怎么才算最快呢?。。不知道是不是“最快”,仅供参考:




我需要找到b在a中的位置
页: [1]
查看完整版本: numpy数据查找问题