当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python pyspark BlockMatrix.add用法及代码示例


本文简要介绍 pyspark.mllib.linalg.distributed.BlockMatrix.add 的用法。

用法:

add(other)

将两个块矩阵相加。矩阵必须具有相同的大小并匹配 rowsPerBlockcolsPerBlock 值。如果要添加的子矩阵块之一是 SparseMatrix,则生成的子矩阵块也将是 SparseMatrix,即使它被添加到 DenseMatrix。如果添加两个密集子矩阵块,则输出块也将是一个 DenseMatrix。

例子

>>> dm1 = Matrices.dense(3, 2, [1, 2, 3, 4, 5, 6])
>>> dm2 = Matrices.dense(3, 2, [7, 8, 9, 10, 11, 12])
>>> sm = Matrices.sparse(3, 2, [0, 1, 3], [0, 1, 2], [7, 11, 12])
>>> blocks1 = sc.parallelize([((0, 0), dm1), ((1, 0), dm2)])
>>> blocks2 = sc.parallelize([((0, 0), dm1), ((1, 0), dm2)])
>>> blocks3 = sc.parallelize([((0, 0), sm), ((1, 0), dm2)])
>>> mat1 = BlockMatrix(blocks1, 3, 2)
>>> mat2 = BlockMatrix(blocks2, 3, 2)
>>> mat3 = BlockMatrix(blocks3, 3, 2)
>>> mat1.add(mat2).toLocalMatrix()
DenseMatrix(6, 2, [2.0, 4.0, 6.0, 14.0, 16.0, 18.0, 8.0, 10.0, 12.0, 20.0, 22.0, 24.0], 0)
>>> mat1.add(mat3).toLocalMatrix()
DenseMatrix(6, 2, [8.0, 2.0, 3.0, 14.0, 16.0, 18.0, 4.0, 16.0, 18.0, 20.0, 22.0, 24.0], 0)

相关用法


注:本文由纯净天空筛选整理自spark.apache.org大神的英文原创作品 pyspark.mllib.linalg.distributed.BlockMatrix.add。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。