Packages

class SparseVector extends Vector

A sparse vector represented by an index array and a value array.

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

Instance Constructors

  1. new SparseVector(size: Int, indices: Array[Int], values: Array[Double])

    size

    size of the vector.

    indices

    index array, assume to be strictly increasing.

    values

    value array, must have the same length as the index array.

    Annotations
    @Since( "2.0.0" )

Value Members

  1. def apply(i: Int): Double

    Gets the value of the ith element.

    Gets the value of the ith element.

    i

    index

    Definition Classes
    SparseVectorVector
  2. def argmax: Int

    Find the index of a maximal element.

    Find the index of a maximal element. Returns the first maximal element in case of a tie. Returns -1 if vector has length 0.

    Definition Classes
    SparseVectorVector
  3. def compressed: Vector

    Returns a vector in either dense or sparse format, whichever uses less storage.

    Returns a vector in either dense or sparse format, whichever uses less storage.

    Definition Classes
    Vector
    Annotations
    @Since( "2.0.0" )
  4. def copy: SparseVector

    Makes a deep copy of this vector.

    Makes a deep copy of this vector.

    Definition Classes
    SparseVectorVector
  5. def dot(v: Vector): Double

    Calculate the dot product of this vector with another.

    Calculate the dot product of this vector with another.

    If size does not match an IllegalArgumentException is thrown.

    Definition Classes
    Vector
    Annotations
    @Since( "3.0.0" )
  6. def equals(other: Any): Boolean
    Definition Classes
    SparseVectorVector → AnyRef → Any
  7. def foreachActive(f: (Int, Double) ⇒ Unit): Unit

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

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

    f

    the function takes two parameters where the first parameter is the index of the vector with type Int, and the second parameter is the corresponding value with type Double.

    Definition Classes
    Vector
    Annotations
    @Since( "2.0.0" )
  8. def hashCode(): Int

    Returns a hash code value for the vector.

    Returns a hash code value for the vector. The hash code is based on its size and its first 128 nonzero entries, using a hash algorithm similar to java.util.Arrays.hashCode.

    Definition Classes
    SparseVectorVector → AnyRef → Any
  9. val indices: Array[Int]
    Annotations
    @Since( "2.0.0" )
  10. def numActives: Int

    Number of active entries.

    Number of active entries. An "active entry" is an element which is explicitly stored, regardless of its value. Note that inactive entries have value 0.

    Definition Classes
    SparseVectorVector
  11. def numNonzeros: Int

    Number of nonzero elements.

    Number of nonzero elements. This scans all active values and count nonzeros.

    Definition Classes
    SparseVectorVector
  12. val size: Int

    Size of the vector.

    Size of the vector.

    Definition Classes
    SparseVectorVector
  13. def toArray: Array[Double]

    Converts the instance to a double array.

    Converts the instance to a double array.

    Definition Classes
    SparseVectorVector
  14. def toDense: DenseVector

    Converts this vector to a dense vector.

    Converts this vector to a dense vector.

    Definition Classes
    Vector
    Annotations
    @Since( "2.0.0" )
  15. def toSparse: SparseVector

    Converts this vector to a sparse vector with all explicit zeros removed.

    Converts this vector to a sparse vector with all explicit zeros removed.

    Definition Classes
    Vector
    Annotations
    @Since( "2.0.0" )
  16. def toString(): String
    Definition Classes
    SparseVector → AnyRef → Any
  17. val values: Array[Double]
    Annotations
    @Since( "2.0.0" )