gpt4 book ai didi

python - 将较小的数组放入大数组中,同时忽略零

转载 作者:行者123 更新时间:2023-12-01 04:52:20 26 4
gpt4 key购买 nike

我有一个大数组,想要在某个偏移处放置一个较小的数组,同时忽略较小数组中的零。最好的方法是什么?

我尝试了屏蔽数组,但不知怎的,这很慢

mask = np.ma.masked_equal(pixels, 0, False)
output[offset_y:offset_y+tile_height,offset_x:offset_x+tile_width] = np.where(mask.mask, output[offset_y:offset_y+tile_height,offset_x:offset_x+tile_width], pixels)

然后我尝试了这个

np.place(output[offset_y:offset_y+tile_height,offset_x:offset_x+tile_width], pixels>0, pixels[pixels>0])

但是速度很慢

最快的方法是什么?

最佳答案

我怀疑常规的旧逻辑索引在这里是最有效的:

# make a view into output with the same dimensions as `pixels`
output_subarray = output[offset_y:offset_y+tile_height,offset_x:offset_x+tile_width]

mask = pixels != 0
output_subarray[mask] = pixels[mask]

关于python - 将较小的数组放入大数组中,同时忽略零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28159868/

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