[英]Selecting portion of multi-dimensional numpy array
我到处搜索,但似乎找不到任何有效的方法来根据索引选择3d数组的一部分。 举例来说,假设我有一些尺寸为200 x 200 x 200的3d数组,并且我想选择和更改所有索引都大于100的所有元素的值
import numpy as np
mask = np.ones((200,200,200))
for x in np.arange(0,mask.shape[0]):
for y in np.arange(0,mask.shape[1]):
for z in np.arange(0,mask.shape[2]):
if x > 100 & y > 100 & z > 100:
mask[x,y,z] = 0
else:
mask[x,y,z] = 1
必须使用np.select或类似方法来执行某些有效的方法,但是我还是无法解决。 任何帮助将非常感激。
我想选择并更改所有索引都大于100的所有元素的值
请执行以下操作:
mask[101:,101:,101:] = 0
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.