reshape_as_blocks#

astropy.nddata.reshape_as_blocks(data, block_size)[源代码]#

将数据数组整形为块。

这对于有效地将函数应用于数据的块子集而不是使用循环非常有用。整形数组是输入数据数组的视图。

在 4.1 版本加入.

参数:
data : ndarray恩达雷

输入数据数组。

block_sizePYTHON:INT或NumPY:ARRAY_LIKE(PYTHON:INT)

沿每个轴的整数块大小。如果 block_size 是标量和 data 有不止一个维度 block_size 将用于每个轴。每个维度 block_size 必须平均分为相应的尺寸 data .

返回:
output : ndarray恩达雷

作为输入视图的整形数组 data 数组。

实例

>>> import numpy as np
>>> from astropy.nddata import reshape_as_blocks
>>> data = np.arange(16).reshape(4, 4)
>>> data
array([[ 0,  1,  2,  3],
       [ 4,  5,  6,  7],
       [ 8,  9, 10, 11],
       [12, 13, 14, 15]])
>>> reshape_as_blocks(data, (2, 2))
array([[[[ 0,  1],
         [ 4,  5]],
        [[ 2,  3],
         [ 6,  7]]],
       [[[ 8,  9],
         [12, 13]],
        [[10, 11],
         [14, 15]]]])