breeze.linalg

SparseVector

class SparseVector[E] extends StorageVector[E] with VectorLike[E, SparseVector[E]] with Serializable

A Binary-search backed vector. There is a parallel array of ints (in 0 until length) and values, sorted by index value. To quickly access all stored values use the following loop:

var offset = 0
while( offset < v.activeSize) {
  val index: Int = v.indexAt(offset)
  val value: E = v.valueAt(offset)

  offset += 1
}
Annotations
@SerialVersionUID( 1 )
Linear Supertypes
Serializable, Serializable, StorageVector[E], Storage[E], Vector[E], VectorLike[E, SparseVector[E]], Tensor[Int, E], TensorLike[Int, E, SparseVector[E]], NumericOps[SparseVector[E]], QuasiTensor[Int, E], AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. SparseVector
  2. Serializable
  3. Serializable
  4. StorageVector
  5. Storage
  6. Vector
  7. VectorLike
  8. Tensor
  9. TensorLike
  10. NumericOps
  11. QuasiTensor
  12. AnyRef
  13. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SparseVector(index: Array[Int], data: Array[E], length: Int)(implicit value: DefaultArrayValue[E])

  2. new SparseVector(index: Array[Int], data: Array[E], activeSize: Int, length: Int)(implicit value: DefaultArrayValue[E])

  3. new SparseVector(array: SparseArray[E])(implicit value: DefaultArrayValue[E])

Value Members

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

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def %[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpMod, That]): That

    Alias for :%(b) when b is a scalar.

    Alias for :%(b) when b is a scalar.

    Definition Classes
    NumericOps
  5. final def %=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpMod]): SparseVector[E]

    Alias for :%=(b) when b is a scalar.

    Alias for :%=(b) when b is a scalar.

    Definition Classes
    NumericOps
  6. final def &&[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpAnd, That]): That

    Alias for :&&(b) for all b.

    Alias for :&&(b) for all b.

    Definition Classes
    NumericOps
  7. final def *[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpMulMatrix, That]): That

    Matrix multiplication

    Matrix multiplication

    Definition Classes
    NumericOps
  8. final def *=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpMulScalar]): SparseVector[E]

    Alias for :*=(b) when b is a scalar.

    Alias for :*=(b) when b is a scalar.

    Definition Classes
    NumericOps
  9. final def +[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpAdd, That]): That

    Alias for :+(b) for all b.

    Alias for :+(b) for all b.

    Definition Classes
    NumericOps
  10. final def +=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpAdd]): SparseVector[E]

    Alias for :+=(b) for all b.

    Alias for :+=(b) for all b.

    Definition Classes
    NumericOps
  11. final def +=?[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpAdd]): BinaryUpdateOp[TT, B, OpAdd]

    Returns the operator delegate used in +=

    Returns the operator delegate used in +=

    Definition Classes
    NumericOps
  12. final def -[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpSub, That]): That

    Alias for :-(b) for all b.

    Alias for :-(b) for all b.

    Definition Classes
    NumericOps
  13. final def -=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpSub]): SparseVector[E]

    Alias for :-=(b) for all b.

    Alias for :-=(b) for all b.

    Definition Classes
    NumericOps
  14. final def /[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpDiv, That]): That

    Alias for :/(b) when b is a scalar.

    Alias for :/(b) when b is a scalar.

    Definition Classes
    NumericOps
  15. final def /=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpDiv]): SparseVector[E]

    Alias for :/=(b) when b is a scalar.

    Alias for :/=(b) when b is a scalar.

    Definition Classes
    NumericOps
  16. final def :!=[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpNe, That]): That

    Element-wise inequality comparator of this and b.

    Element-wise inequality comparator of this and b.

    Definition Classes
    NumericOps
  17. final def :%[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpMod, That]): That

    Element-wise modulo of this and b.

    Element-wise modulo of this and b.

    Definition Classes
    NumericOps
  18. final def :%=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpMod]): SparseVector[E]

    Mutates this by element-wise modulo of b into this.

    Mutates this by element-wise modulo of b into this.

    Definition Classes
    NumericOps
  19. final def :&&[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpAnd, That]): That

    Element-wise logical "and" operator -- returns true if corresponding elements are non-zero.

    Element-wise logical "and" operator -- returns true if corresponding elements are non-zero.

    Definition Classes
    NumericOps
  20. final def :*[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpMulScalar, That]): That

    Element-wise product of this and b.

    Element-wise product of this and b.

    Definition Classes
    NumericOps
  21. final def :*=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpMulScalar]): SparseVector[E]

    Mutates this by element-wise multiplication of b into this.

    Mutates this by element-wise multiplication of b into this.

    Definition Classes
    NumericOps
  22. final def :+[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpAdd, That]): That

    Element-wise sum of this and b.

    Element-wise sum of this and b.

    Definition Classes
    NumericOps
  23. final def :+=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpAdd]): SparseVector[E]

    Mutates this by element-wise addition of b into this.

    Mutates this by element-wise addition of b into this.

    Definition Classes
    NumericOps
  24. final def :-[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpSub, That]): That

    Element-wise difference of this and b.

    Element-wise difference of this and b.

    Definition Classes
    NumericOps
  25. final def :-=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpSub]): SparseVector[E]

    Mutates this by element-wise subtraction of b from this

    Mutates this by element-wise subtraction of b from this

    Definition Classes
    NumericOps
  26. final def :/[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpDiv, That]): That

    Element-wise quotient of this and b.

    Element-wise quotient of this and b.

    Definition Classes
    NumericOps
  27. final def :/=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpDiv]): SparseVector[E]

    Mutates this by element-wise division of b into this

    Mutates this by element-wise division of b into this

    Definition Classes
    NumericOps
  28. final def :<[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpLT, That]): That

    Element-wise less=than comparator of this and b.

    Element-wise less=than comparator of this and b.

    Definition Classes
    NumericOps
  29. final def :<=[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpLTE, That]): That

    Element-wise less-than-or-equal-to comparator of this and b.

    Element-wise less-than-or-equal-to comparator of this and b.

    Definition Classes
    NumericOps
  30. final def :=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpSet]): SparseVector[E]

    Mutates this by element-wise assignment of b into this.

    Mutates this by element-wise assignment of b into this.

    Definition Classes
    NumericOps
  31. final def :==[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpEq, That]): That

    Element-wise equality comparator of this and b.

    Element-wise equality comparator of this and b.

    Definition Classes
    NumericOps
  32. final def :>[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpGT, That]): That

    Element-wise greater-than comparator of this and b.

    Element-wise greater-than comparator of this and b.

    Definition Classes
    NumericOps
  33. final def :>=[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpGTE, That]): That

    Element-wise greater-than-or-equal-to comparator of this and b.

    Element-wise greater-than-or-equal-to comparator of this and b.

    Definition Classes
    NumericOps
  34. final def :^[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpPow, That]): That

    Element-wise exponentiation of this and b.

    Element-wise exponentiation of this and b.

    Definition Classes
    NumericOps
  35. final def :^=[TT >: SparseVector[E], B](b: B)(implicit op: BinaryUpdateOp[TT, B, OpPow]): SparseVector[E]

    Mutates this by element-wise exponentiation of this by b.

    Mutates this by element-wise exponentiation of this by b.

    Definition Classes
    NumericOps
  36. final def :^^[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpXor, That]): That

    Element-wise logical "xor" operator -- returns true if only one of the corresponding elements is non-zero.

    Element-wise logical "xor" operator -- returns true if only one of the corresponding elements is non-zero.

    Definition Classes
    NumericOps
  37. final def :||[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpOr, That]): That

    Element-wise logical "or" operator -- returns true if either element is non-zero.

    Element-wise logical "or" operator -- returns true if either element is non-zero.

    Definition Classes
    NumericOps
  38. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  39. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  40. def \[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpSolveMatrixBy, That]): That

    Shaped solve of this by b.

    Shaped solve of this by b.

    Definition Classes
    NumericOps
  41. final def ^^[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpXor, That]): That

    Alias for :^^(b) for all b.

    Alias for :^^(b) for all b.

    Definition Classes
    NumericOps
  42. def active: TensorActive[Int, E, SparseVector[E]]

    Definition Classes
    TensorLike
  43. def activeIterator: Iterator[(Int, E)]

    Definition Classes
    SparseVectorQuasiTensor
  44. def activeKeysIterator: Iterator[Int]

    Definition Classes
    SparseVectorQuasiTensor
  45. def activeSize: Int

    Definition Classes
    SparseVector → Storage → TensorLike
  46. def activeValuesIterator: Iterator[E]

    Definition Classes
    SparseVectorQuasiTensor
  47. def all(implicit semi: Semiring[E]): Boolean

    Returns true if all elements are non-zero

    Returns true if all elements are non-zero

    Definition Classes
    QuasiTensor
  48. def allVisitableIndicesActive: Boolean

    Only gives true if isActive would return true for all i.

    Only gives true if isActive would return true for all i. (May be false anyway)

    returns

    Definition Classes
    SparseVector → Storage
  49. def any(implicit semi: Semiring[E]): Boolean

    Returns true if no elements are non-zero

    Returns true if no elements are non-zero

    Definition Classes
    QuasiTensor
  50. def apply(i: Int): E

    Definition Classes
    SparseVectorTensorLikeQuasiTensor
  51. def apply[Slice1, Slice2, Result](slice1: Slice1, slice2: Slice2)(implicit canSlice: CanSlice2[SparseVector[E], Slice1, Slice2, Result]): Result

    Method for slicing that is tuned for Matrices.

    Method for slicing that is tuned for Matrices.

    returns

    Definition Classes
    TensorLike
  52. def apply[Result](a: Int, slice: Int*)(implicit canSlice: CanSlice[SparseVector[E], Seq[Int], Result]): Result

    Slice a sequence of elements.

    Slice a sequence of elements. Must be at least 2.

    Result
    a
    slice
    canSlice
    returns

    Definition Classes
    TensorLike
  53. def apply[Slice, Result](slice: Slice)(implicit canSlice: CanSlice[SparseVector[E], Slice, Result]): Result

    method for slicing a tensor.

    method for slicing a tensor. For instance, DenseVectors support efficient slicing by a Range object.

    returns

    Definition Classes
    TensorLike
  54. def argmax(implicit ord: Ordering[E]): Int

    Definition Classes
    QuasiTensor
  55. def argmin(implicit ord: Ordering[E]): Int

    Definition Classes
    QuasiTensor
  56. def argsort(implicit ord: Ordering[E]): IndexedSeq[Int]

    Definition Classes
    QuasiTensor
  57. def argtopk(k: Int)(implicit ordering: Ordering[E]): IndexedSeq[Int]

    Returns the k indices with maximum value.

    Returns the k indices with maximum value. (NOT absolute value.)

    k

    how many to return

    ordering
    returns

    Definition Classes
    QuasiTensor
  58. val array: SparseArray[E]

  59. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  60. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  61. def compact(): Unit

  62. def contains(i: Int): Boolean

  63. def copy: SparseVector[E]

    Definition Classes
    SparseVectorVectorLike
  64. def data: Array[E]

    Definition Classes
    SparseVector → Storage
  65. def default: E

    This is always assumed to be equal to 0, for now.

  66. final def dot[TT >: SparseVector[E], B, BB >: B, That](b: B)(implicit op: BinaryOp[TT, BB, OpMulInner, That]): That

    Inner product of this and b.

    Inner product of this and b.

    Definition Classes
    NumericOps
  67. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  68. def equals(p1: Any): Boolean

    Definition Classes
    SparseVectorVector → AnyRef → Any
  69. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws()
  70. def findAll(f: (E) ⇒ Boolean): IndexedSeq[Int]

    Returns all indices k whose value satisfies a predicate.

    Returns all indices k whose value satisfies a predicate.

    Definition Classes
    QuasiTensor
  71. def forall(fn: (Int, E) ⇒ Boolean): Boolean

    Returns true if and only if the given predicate is true for all elements.

    Returns true if and only if the given predicate is true for all elements.

    Definition Classes
    TensorLike
  72. def forallValues(fn: (E) ⇒ Boolean): Boolean

    Returns true if and only if the given predicate is true for all elements.

    Returns true if and only if the given predicate is true for all elements.

    Definition Classes
    TensorLike
  73. def foreach[U](fn: (E) ⇒ U): Unit

    Definition Classes
    VectorLike
  74. def foreachKey[U](fn: (Int) ⇒ U): Unit

    Applies the given function to each key in the tensor.

    Applies the given function to each key in the tensor.

    Definition Classes
    TensorLike
  75. def foreachPair[U](fn: (Int, E) ⇒ U): Unit

    Applies the given function to each key and its corresponding value.

    Applies the given function to each key and its corresponding value.

    Definition Classes
    TensorLike
  76. def foreachValue[U](fn: (E) ⇒ U): Unit

    Applies the given function to each value in the map (one for each element of the domain, including zeros).

    Applies the given function to each value in the map (one for each element of the domain, including zeros).

    Definition Classes
    TensorLike
  77. final def getClass(): Class[_]

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

    Definition Classes
    AnyRef → Any
  79. def index: Array[Int]

  80. def indexAt(i: Int): Int

    Gives the logical index from the physical index.

    Gives the logical index from the physical index.

    i
    returns

    Definition Classes
    SparseVector → Storage
  81. def isActive(rawIndex: Int): Boolean

    Definition Classes
    SparseVector → Storage
  82. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  83. def iterableSize: Int

    Definition Classes
    Storage
  84. def iterator: Iterator[(Int, E)]

    Definition Classes
    VectorQuasiTensor
  85. def keySet: Set[Int]

    returns

    the set of keys in this vector (0 until length)

    Definition Classes
    VectorQuasiTensor
  86. def keys: TensorKeys[Int, E, SparseVector[E]]

    Definition Classes
    TensorLike
  87. def keysIterator: Iterator[Int]

    Definition Classes
    VectorQuasiTensor
  88. def length: Int

    Definition Classes
    SparseVectorVector
  89. def map[E2, That](fn: (E) ⇒ E2)(implicit canMapValues: CanMapValues[SparseVector[E], E, E2, That]): That

    Definition Classes
    VectorLike
  90. def mapActivePairs[TT >: SparseVector[E], O, That](f: (Int, E) ⇒ O)(implicit bf: CanMapKeyValuePairs[TT, Int, E, O, That]): That

    Maps all active key-value pairs values.

    Maps all active key-value pairs values.

    Definition Classes
    TensorLike
  91. def mapActiveValues[TT >: SparseVector[E], O, That](f: (E) ⇒ O)(implicit bf: CanMapValues[TT, E, O, That]): That

    Maps all non-zero values.

    Maps all non-zero values.

    Definition Classes
    TensorLike
  92. def mapPairs[TT >: SparseVector[E], O, That](f: (Int, E) ⇒ O)(implicit bf: CanMapKeyValuePairs[TT, Int, E, O, That]): That

    Creates a new map containing a transformed copy of this map.

    Creates a new map containing a transformed copy of this map.

    Definition Classes
    TensorLike
  93. def mapValues[TT >: SparseVector[E], O, That](f: (E) ⇒ O)(implicit bf: CanMapValues[TT, E, O, That]): That

    Creates a new map containing a transformed copy of this map.

    Creates a new map containing a transformed copy of this map.

    Definition Classes
    TensorLike
  94. def max(implicit ord: Ordering[E]): E

    Definition Classes
    QuasiTensor
  95. def min(implicit ord: Ordering[E]): E

    Definition Classes
    QuasiTensor
  96. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  97. def norm(n: Double)(implicit field: Ring[E]): Double

    Returns the k-norm of this Vector.

    Returns the k-norm of this Vector.

    Definition Classes
    Vector
  98. final def notify(): Unit

    Definition Classes
    AnyRef
  99. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  100. def pairs: TensorPairs[Int, E, SparseVector[E]]

    Definition Classes
    TensorLike
  101. def repr: SparseVector[E]

    Definition Classes
    SparseVectorNumericOps
  102. def reserve(nnz: Int): Unit

  103. def size: Int

    Definition Classes
    VectorTensorLike
  104. def sum(implicit num: Numeric[E]): E

    Definition Classes
    QuasiTensor
  105. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  106. final def t[TT >: SparseVector[E], That, Slice1, Slice2, Result](a: Slice1, b: Slice2)(implicit op: CanTranspose[TT, That], canSlice: CanSlice2[That, Slice1, Slice2, Result]): Result

    A transposed view of this object, followed by a slice.

    A transposed view of this object, followed by a slice. Sadly frequently necessary.

    Definition Classes
    NumericOps
  107. final def t[TT >: SparseVector[E], That](implicit op: CanTranspose[TT, That]): That

    A transposed view of this object.

    A transposed view of this object.

    Definition Classes
    NumericOps
  108. def toArray(implicit cm: ClassManifest[E]): Array[E]

    Definition Classes
    Vector
  109. def toDenseVector(implicit cm: ClassManifest[E]): DenseVector[E]

    Definition Classes
    Vector
  110. def toString(): String

    Definition Classes
    SparseVector → AnyRef → Any
  111. final def unary_![TT >: SparseVector[E], That](implicit op: UnaryOp[TT, OpNot, That]): That

    Definition Classes
    NumericOps
  112. final def unary_-[TT >: SparseVector[E], That](implicit op: UnaryOp[TT, OpNeg, That]): That

    Definition Classes
    NumericOps
  113. def update(i: Int, v: E): Unit

    Definition Classes
    SparseVectorTensorLikeQuasiTensor
  114. def ureduce[Final](f: URFunc[E, Final]): Final

    Definition Classes
    SparseVectorQuasiTensor
  115. def use(index: Array[Int], data: Array[E], activeSize: Int): Unit

    Sets the underlying sparse array to use this data

    Sets the underlying sparse array to use this data

    index

    must be a sorted list of indices

    data

    values corresponding to the index

    activeSize

    number of active elements. The first activeSize will be used.

  116. def used: Int

  117. def valueAt(i: Int): E

    same as data(i).

    same as data(i). Gives the value at the underlying offset.

    i

    index into the data array

    returns

    Definition Classes
    SparseVector → Storage
  118. def values: TensorValues[Int, E, SparseVector[E]]

    Definition Classes
    TensorLike
  119. def valuesIterator: Iterator[E]

    Definition Classes
    VectorQuasiTensor
  120. final def wait(): Unit

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws()
  123. final def ||[TT >: SparseVector[E], B, That](b: B)(implicit op: BinaryOp[TT, B, OpOr, That]): That

    Alias for :||(b) for all b.

    Alias for :||(b) for all b.

    Definition Classes
    NumericOps

Inherited from Serializable

Inherited from Serializable

Inherited from StorageVector[E]

Inherited from Storage[E]

Inherited from Vector[E]

Inherited from VectorLike[E, SparseVector[E]]

Inherited from Tensor[Int, E]

Inherited from TensorLike[Int, E, SparseVector[E]]

Inherited from NumericOps[SparseVector[E]]

Inherited from QuasiTensor[Int, E]

Inherited from AnyRef

Inherited from Any

Ungrouped