gpt4 book ai didi

python - 如果该值在另一个列表中被屏蔽,则从列表中删除元素

转载 作者:太空宇宙 更新时间:2023-11-04 09:55:09 25 4
gpt4 key购买 nike

我导入的数据格式为递增整数的 numpy 掩码数组。被屏蔽的元素是不规则的并且不重复,例如打印它会产生:

masked = [0,1,--,3,--,5,6,--,--,9,--]

我还有另一个递增数字列表,它不是从零开始的,并且有不规则的间隙,并且大小与masked不同:

数据 = [1,3,4,6,7,9,10]

如果 data 的值是 masked 中的屏蔽元素,我想删除任何元素

所以我得到:

结果 = [1,3,6,9]

因为 4、7 和 10 是 masked 中的屏蔽值。

我认为我的伪代码应该是这样的:

for i in len(masked):
if masked[i] = 'masked' && data[i] == [i]:
del data[i]

但是我在协调两个数组的不同长度和不匹配的索引时遇到了麻烦,

感谢您的帮助!

最佳答案

确保 data 是一个数组:

data = np.asarray(data)

然后:

data[~masked.mask[data]]

这将非常快,尽管它确实假设您的屏蔽数组包含从 0 到至少 max(data) 的所有数字。

关于python - 如果该值在另一个列表中被屏蔽,则从列表中删除元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46221297/

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