用法:
dask.array.block(arrays, allow_unknown_chunksizes=False)
从嵌套的块列表中组装 nd-array。
最内层列表中的块沿着最后一个维度 (-1) 连接,然后这些块沿着 second-last 维度 (-2) 连接,依此类推,直到到达最外层列表
块可以是任何维度,但不会使用正常规则进行广播。相反,插入大小为 1 的引导轴,以使所有块的
block.ndim
相同。这主要用于处理标量,这意味着像block([v, 1])
这样的代码是有效的,其中v.ndim == 1
。当嵌套列表有两层深度时,这允许从它们的组件构造块矩阵。
- arrays:数组 或标量的嵌套列表(但不是元组)
如果传递单个 ndarray 或标量(深度为 0 的嵌套列表),则返回未修改(且未复制)。
元素形状必须沿适当的轴匹配(不广播),但前导 1 将根据需要添加到形状之前以使尺寸匹配。
- allow_unknown_chunksizes: bool:
允许未知的块大小,例如来自从 dask 数据帧转换而来的。 Dask.array 无法验证块是否对齐。如果数据来自不同对齐的来源,那么这可能会导致意外结果。
- block_array:ndarray
从给定块组装的数组。
输出的维数等于以下各项中的最大值: * 所有输入的维数 * 输入列表嵌套的深度
- ValueError
- 如果列表深度不匹配 - 例如,
[[a, b], c]
是非法的,应拼写为[[a, b], [c]]
- 如果列表为空 - 例如,
[[a, b], []]
- 如果列表深度不匹配 - 例如,
参数:
返回:
抛出:
注意:
当仅使用标量调用时,
block
等效于 ndarray 调用。所以block([[1, 2], [3, 4]])
等价于array([[1, 2], [3, 4]])
。此函数不强制块位于固定网格上。
block([[a, b], [c, d]])
不限于以下形式的数组:AAAbb AAAbb cccDD
但也允许生产,对于一些
a, b, c, d
:AAAbb AAAbb cDDDD
由于连接首先发生在最后一个轴上,
block
_not_ 能够直接产生以下内容:AAAbb cccbb cccDD
Matlab 的“square bracket stacking”,
[A, B, ...; p, q, ...]
,等价于block([[A, B, ...], [p, q, ...]])
。
相关用法
- Python dask.array.blockwise用法及代码示例
- Python dask.array.bitwise_or用法及代码示例
- Python dask.array.bitwise_and用法及代码示例
- Python dask.array.bitwise_not用法及代码示例
- Python dask.array.bincount用法及代码示例
- Python dask.array.broadcast_arrays用法及代码示例
- Python dask.array.bitwise_xor用法及代码示例
- Python dask.array.stats.ttest_ind用法及代码示例
- Python dask.array.ma.masked_values用法及代码示例
- Python dask.array.divmod用法及代码示例
- Python dask.array.negative用法及代码示例
- Python dask.array.overlap.map_overlap用法及代码示例
- Python dask.array.stats.ttest_rel用法及代码示例
- Python dask.array.ma.average用法及代码示例
- Python dask.array.vstack用法及代码示例
- Python dask.array.isneginf用法及代码示例
- Python dask.array.ma.masked_array用法及代码示例
- Python dask.array.matmul用法及代码示例
- Python dask.array.random.weibull用法及代码示例
- Python dask.array.Array.compute_chunk_sizes用法及代码示例
注:本文由纯净天空筛选整理自dask.org大神的英文原创作品 dask.array.block。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。