{ } Raw JSON

bundles / scipy 1.17.1 / scipy / sparse / _dia / dia_matrix

ABCMeta

scipy.sparse._dia:dia_matrix

source: /scipy/sparse/_dia.py :580

Signature

def   dia_matrix ( arg1 shape = None dtype = None copy = False * maxprint = None )

Summary

Sparse matrix with DIAgonal storage.

Extended Summary

This can be instantiated in several ways:

dia_matrix(D)

where D is a 2-D ndarray

dia_matrix(S)

with another sparse array or matrix S (equivalent to S.todia())

dia_matrix((M, N), [dtype])

to construct an empty matrix with shape (M, N), dtype is optional, defaulting to dtype='d'.

dia_matrix((data, offsets), shape=(M, N))

where the data[k,:] stores the diagonal entries for diagonal offsets[k] (See example below)

Attributes

dtype : dtype

Data type of the matrix

shape : 2-tuple

Shape of the matrix

ndim : int

Number of dimensions (this is always 2)

nnz
size
data

DIA format data array of the matrix

offsets

DIA format offset array of the matrix

T

Notes

Sparse matrices can be used in arithmetic operations: they support addition, subtraction, multiplication, division, and matrix power. Sparse matrices with DIAgonal storage do not support slicing.

Examples

import numpy as np
from scipy.sparse import dia_matrix
dia_matrix((3, 4), dtype=np.int8).toarray()
data = np.array([[1, 2, 3, 4]]).repeat(3, axis=0)
offsets = np.array([0, -1, 2])
dia_matrix((data, offsets), shape=(4, 4)).toarray()
from scipy.sparse import dia_matrix
n = 10
ex = np.ones(n)
data = np.array([ex, 2 * ex, ex])
offsets = np.array([-1, 0, 1])
dia_matrix((data, offsets), shape=(n, n)).toarray()

Aliases

  • scipy.sparse.dia_matrix