dask.array.overlap.overlap
dask.array.overlap.overlap¶
- dask.array.overlap.overlap(x, depth, boundary, *, allow_rechunk=True)[源代码]¶
共享相邻块之间的边界
- 参数
- x: da.Array
一个 dask 数组
- depth: dict
每个轴的共享边界的大小
- 边界: dict
每个轴上的边界条件。选项有 ‘reflect’、’periodic’、’nearest’、’none’,或是一个数组值。这样的值将用该值填充边界。
- allow_rechunk: bool, 仅关键字参数
允许重新分块,否则块大小需要匹配,核心维度只能由一个块组成。
- 深度输入指示相邻单元格之间重叠的单元格数量
- 块 ``{0: 2, 2: 5}`` 表示在0轴上共享两个单元格,在2轴上共享五个单元格。
- 此输入中缺失的轴将不会重叠。
- 任何包含小于深度块的轴将被重新分块,如果
- 可能的,前提是关键字 ``allow_rechunk`` 为 True(推荐)。
示例
>>> import numpy as np >>> import dask.array as da
>>> x = np.arange(64).reshape((8, 8)) >>> d = da.from_array(x, chunks=(4, 4)) >>> d.chunks ((4, 4), (4, 4))
>>> g = da.overlap.overlap(d, depth={0: 2, 1: 1}, ... boundary={0: 100, 1: 'reflect'}) >>> g.chunks ((8, 8), (6, 6))
>>> np.array(g) array([[100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100], [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100], [ 0, 0, 1, 2, 3, 4, 3, 4, 5, 6, 7, 7], [ 8, 8, 9, 10, 11, 12, 11, 12, 13, 14, 15, 15], [ 16, 16, 17, 18, 19, 20, 19, 20, 21, 22, 23, 23], [ 24, 24, 25, 26, 27, 28, 27, 28, 29, 30, 31, 31], [ 32, 32, 33, 34, 35, 36, 35, 36, 37, 38, 39, 39], [ 40, 40, 41, 42, 43, 44, 43, 44, 45, 46, 47, 47], [ 16, 16, 17, 18, 19, 20, 19, 20, 21, 22, 23, 23], [ 24, 24, 25, 26, 27, 28, 27, 28, 29, 30, 31, 31], [ 32, 32, 33, 34, 35, 36, 35, 36, 37, 38, 39, 39], [ 40, 40, 41, 42, 43, 44, 43, 44, 45, 46, 47, 47], [ 48, 48, 49, 50, 51, 52, 51, 52, 53, 54, 55, 55], [ 56, 56, 57, 58, 59, 60, 59, 60, 61, 62, 63, 63], [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100], [100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100]])