Python 如何只到(…,3)到(…,1)?
我有一个形状为Python 如何只到(…,3)到(…,1)?,python,numpy,Python,Numpy,我有一个形状为(1471201203)。我想获得(147、120、120、1)形状的数组副本。最后一个维度中的最后两个索引应该被丢弃 我应该使用什么功能?取决于您是否希望保持第四维: [1]中的:将numpy作为np导入 在[2]中:a=np.random.rand(1471201203) 在[3]中:b=a[:,:,:,0].copy();b、 形状 Out[3]:(147120120) #轴=-1展开最后一个维度 在[4]中:b=np.展开(a[:,:,:,0],轴=-1);b、 形状 Ou
(1471201203)
。我想获得(147、120、120、1)
形状的数组副本。最后一个维度中的最后两个索引应该被丢弃
我应该使用什么功能?取决于您是否希望保持第四维: [1]中的
:将numpy作为np导入
在[2]中:a=np.random.rand(1471201203)
在[3]中:b=a[:,:,:,0].copy();b、 形状
Out[3]:(147120120)
#轴=-1展开最后一个维度
在[4]中:b=np.展开(a[:,:,:,0],轴=-1);b、 形状
Out[4]:(1471201201)
取决于是否要保留第四维:
[1]中的:将numpy作为np导入
在[2]中:a=np.random.rand(1471201203)
在[3]中:b=a[:,:,:,0].copy();b、 形状
Out[3]:(147120120)
#轴=-1展开最后一个维度
在[4]中:b=np.展开(a[:,:,:,0],轴=-1);b、 形状
Out[4]:(1471201201)
是否要切掉最后一个维度中的最后两个索引?
我想这就是你想要的
a = np.random.rand(147, 120, 120, 3)
b = a[...,:1]
b.shape
输出
(147, 120, 120, 1)
省略号
…
可用于泛化空切片:
是否要切掉最后一个维度中的最后两个索引?
我想这就是你想要的
a = np.random.rand(147, 120, 120, 3)
b = a[...,:1]
b.shape
输出
(147, 120, 120, 1)
省略号
…
可用于概括空切片:
索引时保持维度的一种简单方法是将索引放置在列表中:
>>> a = np.random.rand(147, 120, 120, 3)
>>> a[:, :, :, [0]].shape
(147, 120, 120, 1)
>>> a[..., [0]].shape
(147, 120, 120, 1)
其中
[0]
是一个包含单个元素0的列表。如果您想要数组的副本而不是视图,请使用.copy()
。索引时保留维度的简单方法是将索引放置在列表中:
>>> a = np.random.rand(147, 120, 120, 3)
>>> a[:, :, :, [0]].shape
(147, 120, 120, 1)
>>> a[..., [0]].shape
(147, 120, 120, 1)
其中
[0]
是一个包含单个元素0的列表。如果需要阵列的副本而不是视图,请使用.copy()
。若要添加到该副本,将返回一个视图。如果需要它的副本,请在NumPy数组上使用.copy()
。@Ehsan谢谢,没有正确阅读问题。若要添加此问题,将返回一个视图。如果需要它的副本,请在NumPy数组上使用.copy()
。@Ehsan谢谢,我没有正确阅读问题。