【发布时间】:2013-12-30 17:02:37
【问题描述】:
我尝试使用 ndarrays 了解这段代码会发生什么:
max_evecs = evecs[..., :, 0]
其中 evecs 是 ndarray 类型。到目前为止,我知道 ':' 是一个切片运算符,而 '...' 是一个所谓的椭圆。到目前为止,':' 表示所有元素,而 '...' 表示需要的元素。我调查了形状的数组:
>>> max_evecs.shape
(128, 128, 72)
>>> evecs.shape
(128, 128, 72, 3)
我可以想象,它试图将 3D 数组转换为三元组 (x,y,z) 数组。但我不确定。
对于那些关心的人:它来自 dipy 软件包:函数 quantize_evecs 内 https://github.com/nipy/dipy/blob/ff75b192f694cdb62cc11310159cdb652ce62073/dipy/reconst/dti.py 1663 附近的行
【问题讨论】:
-
如果您只是想获得整个数组的句柄(例如,为了在 for 循环中赋值),您可以使用
A[:]或A[...]
标签: python arrays numpy indexing operators