Class/Object

org.apache.spark.ml.linalg

SparseMatrix

Related Docs: object SparseMatrix | package linalg

Permalink

class SparseMatrix extends Matrix

Column-major sparse matrix. The entry values are stored in Compressed Sparse Column (CSC) format. For example, the following matrix

1.0 0.0 4.0
0.0 3.0 5.0
2.0 0.0 6.0

is stored as values: [1.0, 2.0, 3.0, 4.0, 5.0, 6.0], rowIndices=[0, 2, 1, 0, 1, 2], colPointers=[0, 2, 3, 6].

Annotations
@Since( "2.0.0" )
Source
Matrices.scala
Linear Supertypes
Matrix, Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SparseMatrix
  2. Matrix
  3. Serializable
  4. Serializable
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SparseMatrix(numRows: Int, numCols: Int, colPtrs: Array[Int], rowIndices: Array[Int], values: Array[Double])

    Permalink

    Column-major sparse matrix.

    Column-major sparse matrix. The entry values are stored in Compressed Sparse Column (CSC) format. For example, the following matrix

    1.0 0.0 4.0
    0.0 3.0 5.0
    2.0 0.0 6.0

    is stored as values: [1.0, 2.0, 3.0, 4.0, 5.0, 6.0], rowIndices=[0, 2, 1, 0, 1, 2], colPointers=[0, 2, 3, 6].

    numRows

    number of rows

    numCols

    number of columns

    colPtrs

    the index corresponding to the start of a new column

    rowIndices

    the row index of the entry. They must be in strictly increasing order for each column

    values

    non-zero matrix entries in column major

    Annotations
    @Since( "2.0.0" )
  2. new SparseMatrix(numRows: Int, numCols: Int, colPtrs: Array[Int], rowIndices: Array[Int], values: Array[Double], isTransposed: Boolean)

    Permalink

    numRows

    number of rows

    numCols

    number of columns

    colPtrs

    the index corresponding to the start of a new column (if not transposed)

    rowIndices

    the row index of the entry (if not transposed). They must be in strictly increasing order for each column

    values

    nonzero matrix entries in column major (if not transposed)

    isTransposed

    whether the matrix is transposed. If true, the matrix can be considered Compressed Sparse Row (CSR) format, where colPtrs behaves as rowPtrs, and rowIndices behave as colIndices, and values are stored in row major.

    Annotations
    @Since( "2.0.0" )

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def apply(i: Int, j: Int): Double

    Permalink

    Gets the (i, j)-th element.

    Gets the (i, j)-th element.

    Definition Classes
    SparseMatrixMatrix
  5. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. def colIter: Iterator[Vector]

    Permalink

    Returns an iterator of column vectors.

    Returns an iterator of column vectors. This operation could be expensive, depending on the underlying storage.

    Definition Classes
    SparseMatrixMatrix
  8. val colPtrs: Array[Int]

    Permalink

    the index corresponding to the start of a new column (if not transposed)

    the index corresponding to the start of a new column (if not transposed)

    Annotations
    @Since( "2.0.0" )
  9. def compressed: Matrix

    Permalink

    Returns a matrix in dense column major, dense row major, sparse row major, or sparse column major format, whichever uses less storage.

    Returns a matrix in dense column major, dense row major, sparse row major, or sparse column major format, whichever uses less storage. When dense representation is optimal, it maintains the current layout order.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  10. def compressedColMajor: Matrix

    Permalink

    Returns a matrix in dense or sparse column major format, whichever uses less storage.

    Returns a matrix in dense or sparse column major format, whichever uses less storage.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  11. def compressedRowMajor: Matrix

    Permalink

    Returns a matrix in dense or sparse row major format, whichever uses less storage.

    Returns a matrix in dense or sparse row major format, whichever uses less storage.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  12. def copy: SparseMatrix

    Permalink

    Get a deep copy of the matrix.

    Get a deep copy of the matrix.

    Definition Classes
    SparseMatrixMatrix
  13. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  14. def equals(o: Any): Boolean

    Permalink
    Definition Classes
    SparseMatrix → AnyRef → Any
  15. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  16. def foreachActive(f: (Int, Int, Double) ⇒ Unit): Unit

    Permalink

    Applies a function f to all the active elements of dense and sparse matrix.

    Applies a function f to all the active elements of dense and sparse matrix. The ordering of the elements are not defined.

    f

    the function takes three parameters where the first two parameters are the row and column indices respectively with the type Int, and the final parameter is the corresponding value in the matrix with type Double.

    Definition Classes
    SparseMatrixMatrix
  17. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  18. def hashCode(): Int

    Permalink
    Definition Classes
    SparseMatrix → AnyRef → Any
  19. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  20. val isTransposed: Boolean

    Permalink

    whether the matrix is transposed.

    whether the matrix is transposed. If true, the matrix can be considered Compressed Sparse Row (CSR) format, where colPtrs behaves as rowPtrs, and rowIndices behave as colIndices, and values are stored in row major.

    Definition Classes
    SparseMatrixMatrix
  21. def multiply(y: Vector): DenseVector

    Permalink

    Convenience method for Matrix-Vector multiplication.

    Convenience method for Matrix-Vector multiplication.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  22. def multiply(y: DenseVector): DenseVector

    Permalink

    Convenience method for Matrix-DenseVector multiplication.

    Convenience method for Matrix-DenseVector multiplication. For binary compatibility.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  23. def multiply(y: DenseMatrix): DenseMatrix

    Permalink

    Convenience method for Matrix-DenseMatrix multiplication.

    Convenience method for Matrix-DenseMatrix multiplication.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  24. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  25. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  26. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. def numActives: Int

    Permalink

    Find the number of values stored explicitly.

    Find the number of values stored explicitly. These values can be zero as well.

    Definition Classes
    SparseMatrixMatrix
  28. val numCols: Int

    Permalink

    number of columns

    number of columns

    Definition Classes
    SparseMatrixMatrix
    Annotations
    @Since( "2.0.0" )
  29. def numNonzeros: Int

    Permalink

    Find the number of non-zero active values.

    Find the number of non-zero active values.

    Definition Classes
    SparseMatrixMatrix
  30. val numRows: Int

    Permalink

    number of rows

    number of rows

    Definition Classes
    SparseMatrixMatrix
    Annotations
    @Since( "2.0.0" )
  31. val rowIndices: Array[Int]

    Permalink

    the row index of the entry (if not transposed).

    the row index of the entry (if not transposed). They must be in strictly increasing order for each column

    Annotations
    @Since( "2.0.0" )
  32. def rowIter: Iterator[Vector]

    Permalink

    Returns an iterator of row vectors.

    Returns an iterator of row vectors. This operation could be expensive, depending on the underlying storage.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  33. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  34. def toArray: Array[Double]

    Permalink

    Converts to a dense array in column major.

    Converts to a dense array in column major.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  35. def toDense: DenseMatrix

    Permalink

    Converts this matrix to a dense matrix while maintaining the layout of the current matrix.

    Converts this matrix to a dense matrix while maintaining the layout of the current matrix.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  36. def toDenseColMajor: DenseMatrix

    Permalink

    Converts this matrix to a dense matrix in column major order.

    Converts this matrix to a dense matrix in column major order.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  37. def toDenseRowMajor: DenseMatrix

    Permalink

    Converts this matrix to a dense matrix in row major order.

    Converts this matrix to a dense matrix in row major order.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  38. def toSparse: SparseMatrix

    Permalink

    Converts this matrix to a sparse matrix while maintaining the layout of the current matrix.

    Converts this matrix to a sparse matrix while maintaining the layout of the current matrix.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  39. def toSparseColMajor: SparseMatrix

    Permalink

    Converts this matrix to a sparse matrix in column major order.

    Converts this matrix to a sparse matrix in column major order.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  40. def toSparseRowMajor: SparseMatrix

    Permalink

    Converts this matrix to a sparse matrix in row major order.

    Converts this matrix to a sparse matrix in row major order.

    Definition Classes
    Matrix
    Annotations
    @Since( "2.2.0" )
  41. def toString(maxLines: Int, maxLineWidth: Int): String

    Permalink

    A human readable representation of the matrix with maximum lines and width

    A human readable representation of the matrix with maximum lines and width

    Definition Classes
    Matrix
    Annotations
    @Since( "2.0.0" )
  42. def toString(): String

    Permalink

    A human readable representation of the matrix

    A human readable representation of the matrix

    Definition Classes
    Matrix → AnyRef → Any
  43. def transpose: SparseMatrix

    Permalink

    Transpose the Matrix.

    Transpose the Matrix. Returns a new Matrix instance sharing the same underlying data.

    Definition Classes
    SparseMatrixMatrix
  44. val values: Array[Double]

    Permalink

    nonzero matrix entries in column major (if not transposed)

    nonzero matrix entries in column major (if not transposed)

    Annotations
    @Since( "2.0.0" )
  45. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  46. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  47. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Matrix

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Members