block_replicate#

astropy.nddata.block_replicate(data, block_size, conserve_sum=True)[源代码]#

逐块向上采样数据阵列复制。

参数:
data : array_likeNumpy:ARRAY_LIKE

要块复制的数据。

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

沿每个轴的整数块大小。如果 block_size 是标量和 data 有不止一个维度 block_size 将用于每个轴。

conserve_sum : bool ,可选可选的布尔

如果 True (默认)则输出块复制数据的总和将等于输入的总和 data .

返回:
output : array_likeNumpy:ARRAY_LIKE

数据块复制的数据。请注意,当 conserve_sumTrue ,则输出数组的数据类型将为Float。

实例

>>> import numpy as np
>>> from astropy.nddata import block_replicate
>>> data = np.array([[0., 1.], [2., 3.]])
>>> block_replicate(data, 2)
array([[0.  , 0.  , 0.25, 0.25],
       [0.  , 0.  , 0.25, 0.25],
       [0.5 , 0.5 , 0.75, 0.75],
       [0.5 , 0.5 , 0.75, 0.75]])
>>> block_replicate(data, 2, conserve_sum=False)
array([[0., 0., 1., 1.],
       [0., 0., 1., 1.],
       [2., 2., 3., 3.],
       [2., 2., 3., 3.]])