gpt4 book ai didi

python - 查找由列表组成的 numpy 数组中的索引,其中元素位于列表中

转载 作者:行者123 更新时间:2023-12-03 08:20:24 27 4
gpt4 key购买 nike

所以我有一个 numpy 数组,其中包含由字符串组成的列表(不同长度)。我想找到某个字符串出现的所有行,例如我想找到相应列表包含字符串“hello”的所有 numpy 数组索引。我以为我可以简单地使用

np.where('hello' in np_array)

但不幸的是这只会导致一个空的 numpy 数组。有什么想法吗?

最佳答案

import numpy as np
np_arr = np.array([['hello', 'salam', 'bonjour'], ['a', 'b', 'c'], ['hello']])

vec_func = np.vectorize(lambda x: 'hello' in x)
ind = vec_func(np_arr)

输出:

#Ind: 
array([ True, False, True])

# np_arr[ind]:
array([list(['hello', 'salam', 'bonjour']), list(['hello'])], dtype=object)

但是,如果您希望将输出作为索引整数列表来获取,则可以使用:

np.where(vec_func(np_arr))

#(array([0, 2], dtype=int64),)

关于python - 查找由列表组成的 numpy 数组中的索引,其中元素位于列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68007711/

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