我有一个形状为 512x512 的数组,其中第 i 个和第 j 个位置包含 0 到 100 之间的数字。现在我想在其他地方选择 array[i,j] < 25 和 0。我试过 array = array[where(array<25)]
,这给了我一个一维数组,但我想要二维数组。请帮我解决这个问题。
最佳答案
一个解决方案:
result = (array < 25) * array
第一部分array < 25
为您提供一个相同形状的数组,该数组为 1(真),其中值小于 25,否则为 0(假)。与原始数组的逐元素乘法保留小于 25 的值并将其余值设置为 0。这不会更改原始数组
另一种可能性是将原始数组中所有 >= 25 的值设置为零:
array[array >= 25] = 0
关于python - 二维 numpy 数组中的阈值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36719997/