我有一个(7 x 325 x 255)的numpy数组。七个是与图像不同的波段,而325和448是行和列(即像素)。 X是我的设置示例。
x = x = np.random.randint(5, size=(7,325,255))
我正在尝试使用所有7个波段中的np.where()创建一个二维索引(325,255),其中值等于我的无数据参数-9999。我的论据如下:
y = np.asarray(np.where(x == -9999))
但是,当我打印y的形状时,会得到以下内容,应该是(325,255):
(3, 580125)
有关如何解决此问题的任何建议或想法? 非常感谢!
答案 0 :(得分:1)
使用any
汇总频段。这将产生所需的二维布尔数组:
y = np.any(x == -9999, axis=0)