2024-04-27 21:48:02 发布
网友
我想在数组的所有边上应用一个遮罩,例如3x3数组:
0 0 0 0 1 0 0 0 0
在堆栈中我找到了这个命令,但是我不能应用第二个条件来获得我的特定数组。。。在
我明白了:
0 0 0 0 0 0 0 0 1
您可以始终构造一个掩码来取消选择第一行和最后一列,如下所示:
>>> mask = np.ones((3, 3), dtype=bool) >>> mask array([[True, True, True], [True, True, True], [True, True, True]], dtype=bool) >>> mask[0], mask[-1], mask[:,0], mask[:,-1] = False, False, False, False >>> mask array([[ False, False, False], [ False, True, False], [ False, False, False]], dtype=bool)
可以直接从一维遮罩构造二维遮罩:
In [6]: np.logical_and.outer([0,1,0],[0,1,0]) Out[6]: array([[False, False, False], [False, True, False], [False, False, False]], dtype=bool)
编辑: 对于一般情况,您可以执行以下操作:
您可以始终构造一个掩码来取消选择第一行和最后一列,如下所示:
可以直接从一维遮罩构造二维遮罩:
编辑: 对于一般情况,您可以执行以下操作:
^{pr2}$相关问题 更多 >
编程相关推荐