MyMediaLite
3.03
|
Class for storing sparse matrices. More...
Public Member Functions | |
virtual IMatrix< T > | CreateMatrix (int num_rows, int num_columns) |
Create a matrix with a given number of rows and columns. | |
void | Resize (int num_rows, int num_cols) |
Grows or shrinks the matrix to the requested size, if necessary. | |
SparseMatrix (int num_rows, int num_cols) | |
Create a sparse matrix with a given number of rows. | |
virtual IMatrix< T > | Transpose () |
Get the transpose of the matrix, i.e. a matrix where rows and columns are interchanged. | |
Protected Attributes | |
internal List< List< int > > | index_list = new List<List<int>>() |
List of lists that stores the column indices of the entries. | |
internal List< List< T > > | value_list = new List<List<T>>() |
List of lists that stores the values of the entries. | |
Properties | |
virtual bool | IsSymmetric [get] |
True if the matrix is symmetric, false otherwise. | |
virtual IList< Tuple< int, int > > | NonEmptyEntryIDs [get] |
The row and column IDs of non-empty entries in the matrix. | |
int | NumberOfColumns [get, set] |
The number of columns of the matrix. | |
virtual int | NumberOfNonEmptyEntries [get] |
The number of non-empty entries in the matrix. | |
int | NumberOfRows [get] |
The number of rows of the matrix. | |
virtual T | this[int x, int y] [get, set] |
Access the elements of the sparse matrix. | |
Dictionary< int, T > | this[int x] [get] |
Get a row of the matrix. |
Class for storing sparse matrices.
The data is stored in row-major mode. Indexes are zero-based. Access is internally done by binary search.
T | the matrix element type, must have a default constructor/value |
T | : | new() |
virtual IMatrix<T> CreateMatrix | ( | int | num_rows, |
int | num_columns | ||
) | [inline, virtual] |
Create a matrix with a given number of rows and columns.
num_rows | the number of rows |
num_columns | the number of columns |
Implements IMatrix< T >.
Reimplemented in SkewSymmetricSparseMatrix, and SymmetricSparseMatrix< T >.
void Resize | ( | int | num_rows, |
int | num_cols | ||
) | [inline] |
Grows or shrinks the matrix to the requested size, if necessary.
The new entries are filled with zeros. Obsolete entries are removed.
num_rows | the number of rows |
num_cols | the number of columns |
Implements IMatrix< T >.
SparseMatrix | ( | int | num_rows, |
int | num_cols | ||
) | [inline] |
Create a sparse matrix with a given number of rows.
num_rows | the number of rows |
num_cols | the number of columns |
Get the transpose of the matrix, i.e. a matrix where rows and columns are interchanged.
Implements IMatrix< T >.
internal List<List<int> > index_list = new List<List<int>>() [protected] |
List of lists that stores the column indices of the entries.
internal List<List<T> > value_list = new List<List<T>>() [protected] |
List of lists that stores the values of the entries.
virtual bool IsSymmetric [get] |
True if the matrix is symmetric, false otherwise.
True if the matrix is symmetric, false otherwise
Implements IMatrix< T >.
Reimplemented in SkewSymmetricSparseMatrix, SymmetricSparseMatrix< T >, AsymmetricCorrelationMatrix, and SymmetricCorrelationMatrix.
virtual IList<Tuple<int, int> > NonEmptyEntryIDs [get] |
The row and column IDs of non-empty entries in the matrix.
The row and column IDs of non-empty entries in the matrix
Reimplemented in SymmetricSparseMatrix< T >.
int NumberOfColumns [get, set] |
virtual int NumberOfNonEmptyEntries [get] |
The number of non-empty entries in the matrix.
The number of non-empty entries in the matrix
Reimplemented in SymmetricSparseMatrix< T >.
int NumberOfRows [get] |
virtual T this[int x, int y] [get, set] |
Access the elements of the sparse matrix.
x | the row ID |
y | the column ID |
Implements IMatrix< T >.
Reimplemented in SkewSymmetricSparseMatrix, and SymmetricSparseMatrix< T >.
Dictionary<int, T> this[int x] [get] |
Get a row of the matrix.
x | the row ID |