예제 #1
0
def write_block_matrices(bms: List[BlockMatrix],
                         path_prefix: str,
                         overwrite: bool = False,
                         force_row_major: bool = False,
                         stage_locally: bool = False):
    """Writes a sequence of block matrices to disk in the same format as BlockMatrix.write.

    :param bms: :obj:`list` of :class:`BlockMatrix`
        Block matrices to write to disk.
    :param path_prefix: obj:`str`
        Prefix of path to write the block matrices to.
    :param overwrite: obj:`bool`
        If true, overwrite any files with the same name as the block matrices being generated.
    :param force_row_major: obj:`bool`
        If ``True``, transform blocks in column-major format
        to row-major format before writing.
        If ``False``, write blocks in their current format.
    :param stage_locally: :obj:`bool`
        If ``True``, major output will be written to temporary local storage
        before being copied to ``output``.
    """
    writer = BlockMatrixNativeMultiWriter(path_prefix, overwrite,
                                          force_row_major, stage_locally)
    Env.backend().execute(
        BlockMatrixMultiWrite([bm._bmir for bm in bms], writer))
예제 #2
0
def export_block_matrices(bms: List[BlockMatrix],
                          prefix: str,
                          overwrite: bool = False,
                          delimiter: str = '\t',
                          header: Optional[str] = None,
                          add_index: bool = False):
    writer = BlockMatrixTextMultiWriter(prefix, overwrite, delimiter, header,
                                        add_index)
    Env.backend().execute(
        BlockMatrixMultiWrite([bm._bmir for bm in bms], writer))
예제 #3
0
def export_block_matrices(bms: List[BlockMatrix],
                          prefix: str,
                          overwrite: bool = False,
                          delimiter: str = '\t',
                          header: Optional[str] = None,
                          add_index: bool = False,
                          compression: Optional[str] = None,
                          custom_filenames=None):

    if custom_filenames:
        assert len(custom_filenames) == len(
            bms
        ), "Number of block matrices and number of custom filenames must be equal"

    writer = BlockMatrixTextMultiWriter(prefix, overwrite, delimiter, header,
                                        add_index, compression,
                                        custom_filenames)
    Env.backend().execute(
        BlockMatrixMultiWrite([bm._bmir for bm in bms], writer))
예제 #4
0
def block_matrices_tofiles(bms: List[BlockMatrix],
                           prefix: str,
                           overwrite: bool = False):
    writer = BlockMatrixBinaryMultiWriter(prefix, overwrite)
    Env.backend().execute(
        BlockMatrixMultiWrite([bm._bmir for bm in bms], writer))