lib.stride_tricks
制造
broadcast_arrays
可在
np
数量它使用
as_strided
正如杰米的回答一样,但不需要跨步的知识。
mask1,cube1 =np.broadcast_arrays(mask, cube)
mask1.shape
# (500, 101, 100)
mask1[100,:,:].shape
# (101, 100)
mask1
与共享数据
mask
:
In [13]: mask1.__array_interface__
Out[13]:
{'data': (169145016, False),
'descr': [('', '<f8')],
'shape': (500, 101, 100),
'strides': (0, 800, 8),
'typestr': '<f8',
'version': 3}
In [14]: mask.__array_interface__
Out[14]:
{'data': (169145016, False),
'descr': [('', '<f8')],
'shape': (101, 100),
'strides': None,
'typestr': '<f8',
'version': 3}