Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Programmation Python
Les compléments
Voir le programme détaillé
Module « scipy.sparse »

Classe « bsr_array »

Informations générales

Héritage

            builtins.object
                sparray
        builtins.object
            _minmax_mixin
    builtins.object
        IndexMixin
    builtins.object
        _minmax_mixin
builtins.object
    _spbase
        _data_matrix
            _cs_matrix
                _bsr_base
                    bsr_array

Définition

class bsr_array(_bsr_base, sparray):

help(bsr_array)

Block Sparse Row format sparse array.

This can be instantiated in several ways:
    bsr_array(D, [blocksize=(R,C)])
        where D is a 2-D ndarray.

    bsr_array(S, [blocksize=(R,C)])
        with another sparse array or matrix S (equivalent to S.tobsr())

    bsr_array((M, N), [blocksize=(R,C), dtype])
        to construct an empty sparse array with shape (M, N)
        dtype is optional, defaulting to dtype='d'.

    bsr_array((data, ij), [blocksize=(R,C), shape=(M, N)])
        where ``data`` and ``ij`` satisfy ``a[ij[0, k], ij[1, k]] = data[k]``

    bsr_array((data, indices, indptr), [shape=(M, N)])
        is the standard BSR representation where the block column
        indices for row i are stored in ``indices[indptr[i]:indptr[i+1]]``
        and their corresponding block values are stored in
        ``data[ indptr[i]: indptr[i+1] ]``. If the shape parameter is not
        supplied, the array dimensions are inferred from the index arrays.

Attributes
----------
dtype : dtype
    Data type of the array
shape : 2-tuple
    Shape of the array
ndim : int
    Number of dimensions (this is always 2)
nnz
size
data
    BSR format data array of the array
indices
    BSR format index array of the array
indptr
    BSR format index pointer array of the array
blocksize
    Block size
has_sorted_indices : bool
    Whether indices are sorted
has_canonical_format : bool
T

Notes
-----
Sparse arrays can be used in arithmetic operations: they support
addition, subtraction, multiplication, division, and matrix power.

**Summary of BSR format**

The Block Sparse Row (BSR) format is very similar to the Compressed
Sparse Row (CSR) format. BSR is appropriate for sparse matrices with dense
sub matrices like the last example below. Such sparse block matrices often
arise in vector-valued finite element discretizations. In such cases, BSR is
considerably more efficient than CSR and CSC for many sparse arithmetic
operations.

**Blocksize**

The blocksize (R,C) must evenly divide the shape of the sparse array (M,N).
That is, R and C must satisfy the relationship ``M % R = 0`` and
``N % C = 0``.

If no blocksize is specified, a simple heuristic is applied to determine
an appropriate blocksize.

**Canonical Format**

In canonical format, there are no duplicate blocks and indices are sorted
per row.

**Limitations**

Block Sparse Row format sparse arrays do not support slicing.

Examples
--------
>>> import numpy as np
>>> from scipy.sparse import bsr_array
>>> bsr_array((3, 4), dtype=np.int8).toarray()
array([[0, 0, 0, 0],
       [0, 0, 0, 0],
       [0, 0, 0, 0]], dtype=int8)

>>> row = np.array([0, 0, 1, 2, 2, 2])
>>> col = np.array([0, 2, 2, 0, 1, 2])
>>> data = np.array([1, 2, 3 ,4, 5, 6])
>>> bsr_array((data, (row, col)), shape=(3, 3)).toarray()
array([[1, 0, 2],
       [0, 0, 3],
       [4, 5, 6]])

>>> indptr = np.array([0, 2, 3, 6])
>>> indices = np.array([0, 2, 2, 0, 1, 2])
>>> data = np.array([1, 2, 3, 4, 5, 6]).repeat(4).reshape(6, 2, 2)
>>> bsr_array((data,indices,indptr), shape=(6, 6)).toarray()
array([[1, 1, 0, 0, 2, 2],
       [1, 1, 0, 0, 2, 2],
       [0, 0, 0, 0, 3, 3],
       [0, 0, 0, 0, 3, 3],
       [4, 4, 5, 5, 6, 6],
       [4, 4, 5, 5, 6, 6]])

Constructeur(s)

Signature du constructeur Description
__init__(self, arg1, shape=None, dtype=None, copy=False, blocksize=None, *, maxprint=None)

Liste des propriétés

Nom de la propriétéDescription
blocksizeBlock size of the matrix. [extrait de blocksize.__doc__]
dtype
formatFormat string for matrix. [extrait de format.__doc__]
has_canonical_formatWhether the array/matrix has sorted indices and no duplicates [extrait de has_canonical_format.__doc__]
has_sorted_indicesWhether the indices are sorted [extrait de has_sorted_indices.__doc__]
imag
ndim
nnzNumber of stored values, including explicit zeros. [extrait de nnz.__doc__]
real
shape
sizeNumber of stored values. [extrait de size.__doc__]
TTranspose. [extrait de T.__doc__]

Liste des opérateurs

Opérateurs hérités de la classe _bsr_base

__getitem__, __setitem__

Liste des opérateurs

Opérateurs hérités de la classe _cs_matrix

__eq__, __ge__, __gt__, __le__, __lt__, __ne__

Liste des opérateurs

Opérateurs hérités de la classe _data_matrix

__imul__, __itruediv__, __neg__

Liste des opérateurs

Opérateurs hérités de la classe _spbase

__add__, __iadd__, __isub__, __matmul__, __mul__, __pow__, __radd__, __rmul__, __rsub__, __rtruediv__, __sub__, __truediv__

Liste des méthodes

Toutes les méthodes Méthodes d'instance Méthodes statiques Méthodes dépréciées
Signature de la méthodeDescription

Méthodes héritées de la classe sparray

__init_subclass__, __subclasshook__

Méthodes héritées de la classe _bsr_base

__repr__, check_format, count_nonzero, diagonal, eliminate_zeros, prune, sort_indices, sum_duplicates, toarray, tobsr, tocoo, tocsc, tocsr, transpose

Méthodes héritées de la classe _cs_matrix

maximum, minimum, multiply, resize, sorted_indices, sum

Méthodes héritées de la classe _minmax_mixin

argmax, argmin, max, min, nanmax, nanmin

Méthodes héritées de la classe _data_matrix

__abs__, __round__, astype, conjugate, copy, power

Méthodes héritées de la classe _spbase

__bool__, __div__, __idiv__, __iter__, __len__, __nonzero__, __rdiv__, __rmatmul__, __str__, asformat, conj, dot, mean, nonzero, reshape, setdiag, todense, todia, todok, tolil, trace

Méthodes héritées de la classe object

__delattr__, __dir__, __format__, __getattribute__, __getstate__, __hash__, __reduce__, __reduce_ex__, __setattr__, __sizeof__

Vous êtes un professionnel et vous avez besoin d'une formation ? Sensibilisation à
l'Intelligence Artificielle
Voir le programme détaillé