Package org.apache.spark.mllib.linalg
Interface Vector
- All Superinterfaces:
Serializable
- All Known Implementing Classes:
DenseVector
,SparseVector
Represents a numeric vector, whose index type is Int and value type is Double.
- Note:
- Users should not implement this interface.
-
Method Summary
Modifier and TypeMethodDescriptionReturns an iterator over all the active elements of this vector.double
apply
(int i) Gets the value of the ith element.int
argmax()
Find the index of a maximal element.breeze.linalg.Vector<Object>
asBreeze()
Converts the instance to a breeze vector.asML()
Convert this vector to the new mllib-local representation.Returns a vector in either dense or sparse format, whichever uses less storage.copy()
Makes a deep copy of this vector.double
Calculate the dot product of this vector with another.boolean
void
Applies a functionf
to all the elements of dense and sparse vector.void
foreachActive
(scala.Function2<Object, Object, scala.runtime.BoxedUnit> f) Applies a functionf
to all the active elements of dense and sparse vector.void
foreachNonZero
(scala.Function2<Object, Object, scala.runtime.BoxedUnit> f) Applies a functionf
to all the non-zero elements of dense and sparse vector.int
hashCode()
Returns a hash code value for the vector.iterator()
Returns an iterator over all the elements of this vector.Returns an iterator over all the non-zero elements of this vector.int
Number of active entries.int
Number of nonzero elements.int
size()
Size of the vector.double
sparsity()
Returns the ratio of number of zeros by total number of values.double[]
toArray()
Converts the instance to a double array.toDense()
Converts this vector to a dense vector.toJson()
Converts the vector to a JSON string.toSparse()
Converts this vector to a sparse vector with all explicit zeros removed.toSparseWithSize
(int nnz) Converts this vector to a sparse vector with all explicit zeros removed when the size is known.
-
Method Details
-
activeIterator
Returns an iterator over all the active elements of this vector.- Returns:
- (undocumented)
-
apply
double apply(int i) Gets the value of the ith element.- Parameters:
i
- index- Returns:
- (undocumented)
-
argmax
int argmax()Find the index of a maximal element. Returns the first maximal element in case of a tie. Returns -1 if vector has length 0.- Returns:
- (undocumented)
-
asBreeze
breeze.linalg.Vector<Object> asBreeze()Converts the instance to a breeze vector.- Returns:
- (undocumented)
-
asML
Vector asML()Convert this vector to the new mllib-local representation. This does NOT copy the data; it copies references.- Returns:
- (undocumented)
-
compressed
Vector compressed()Returns a vector in either dense or sparse format, whichever uses less storage.- Returns:
- (undocumented)
-
copy
Vector copy()Makes a deep copy of this vector.- Returns:
- (undocumented)
-
dot
Calculate the dot product of this vector with another.If
size
does not match anIllegalArgumentException
is thrown.- Parameters:
v
- (undocumented)- Returns:
- (undocumented)
-
equals
-
foreach
Applies a functionf
to all the elements of dense and sparse vector.- Parameters:
f
- the function takes two parameters where the first parameter is the index of the vector with typeInt
, and the second parameter is the corresponding value with typeDouble
.
-
foreachActive
Applies a functionf
to all the active elements of dense and sparse vector.- Parameters:
f
- the function takes two parameters where the first parameter is the index of the vector with typeInt
, and the second parameter is the corresponding value with typeDouble
.
-
foreachNonZero
Applies a functionf
to all the non-zero elements of dense and sparse vector.- Parameters:
f
- the function takes two parameters where the first parameter is the index of the vector with typeInt
, and the second parameter is the corresponding value with typeDouble
.
-
hashCode
int hashCode()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 tojava.util.Arrays.hashCode
. -
iterator
Returns an iterator over all the elements of this vector.- Returns:
- (undocumented)
-
nonZeroIterator
Returns an iterator over all the non-zero elements of this vector.- Returns:
- (undocumented)
-
numActives
int numActives()Number of active entries. An "active entry" is an element which is explicitly stored, regardless of its value.- Returns:
- (undocumented)
- Note:
- Inactive entries have value 0.
-
numNonzeros
int numNonzeros()Number of nonzero elements. This scans all active values and count nonzeros.- Returns:
- (undocumented)
-
size
int size()Size of the vector.- Returns:
- (undocumented)
-
sparsity
double sparsity()Returns the ratio of number of zeros by total number of values.- Returns:
- (undocumented)
-
toArray
double[] toArray()Converts the instance to a double array.- Returns:
- (undocumented)
-
toDense
DenseVector toDense()Converts this vector to a dense vector.- Returns:
- (undocumented)
-
toJson
String toJson()Converts the vector to a JSON string.- Returns:
- (undocumented)
-
toSparse
SparseVector toSparse()Converts this vector to a sparse vector with all explicit zeros removed.- Returns:
- (undocumented)
-
toSparseWithSize
Converts this vector to a sparse vector with all explicit zeros removed when the size is known. This method is used to avoid re-computing the number of non-zero elements when it is already known. This method should only be called after computing the number of non-zero elements vianumNonzeros()
. e.g.val nnz = numNonzeros val sv = toSparse(nnz)
If
nnz
is under-specified, aArrayIndexOutOfBoundsException
is thrown.- Parameters:
nnz
- (undocumented)- Returns:
- (undocumented)
-