public interface Vector extends MetaAttributes, Externalizable, StorageOpsMetrics, Destroyable
UnsupportedOperationException
is thrown. This exception can also be thrown in partial cases
where an operation is unsupported only in special cases, e.g. where a given operation cannot be deterministically
completed in polynomial time.
Based on ideas from Apache Mahout.Modifier and Type | Interface and Description |
---|---|
static interface |
Vector.Element
Holder for vector's element.
|
Modifier and Type | Method and Description |
---|---|
Iterable<Vector.Element> |
all()
Gets iterator over all elements in this vector.
|
Spliterator<Double> |
allSpliterator()
Gets spliterator for all values in this vector.
|
default double[] |
asArray()
Returns array of doubles corresponds to vector components.
|
Vector |
assign(double val)
Assigns given value to all elements of this vector.
|
Vector |
assign(double[] vals)
Assigns values from given array to this vector.
|
Vector |
assign(IntToDoubleFunction fun)
Assigns each vector element to the value generated by given function.
|
Vector |
assign(Vector vec)
Copies values from the argument vector to this one.
|
void |
compute(int i,
IgniteIntDoubleToDoubleBiFunction f)
Replace vector entry with value oldVal at i with result of computing f(i, oldVal).
|
Vector |
copy()
Creates new copy of this vector.
|
Vector |
copyOfRange(int from,
int to)
Copies the specified range of the vector into a new vector.
|
Matrix |
cross(Vector vec)
Gets the cross product of this vector and the other vector.
|
Vector |
divide(double x)
Creates new vector containing values from this vector divided by the argument.
|
double |
dot(Vector vec)
Gets dot product of two vectors.
|
<T> T |
foldMap(IgniteBiFunction<T,Double,T> foldFun,
IgniteDoubleFunction<Double> mapFun,
T zeroVal)
Folds this vector into a single value.
|
<T> T |
foldMap(Vector vec,
IgniteBiFunction<T,Double,T> foldFun,
IgniteBiFunction<Double,Double,Double> combFun,
T zeroVal)
Combines & maps two vector and folds them into a single value.
|
double |
get(int idx)
Gets the value at specified index.
|
double |
getDistanceSquared(Vector vec)
Get the square of the distance between this vector and the argument vector.
|
Vector.Element |
getElement(int idx)
Gets element at the given index.
|
double |
getLengthSquared()
Gets the sum of squares of all elements in this vector.
|
<T extends Serializable> |
getRaw(int idx)
Gets the value at specified index.
|
<T extends Serializable> |
getRawX(int idx)
Gets the value at specified index without checking for index boundaries.
|
VectorStorage |
getStorage()
Gets vector storage model.
|
double |
getX(int idx)
Gets the value at specified index without checking for index boundaries.
|
IgniteUuid |
guid()
Auto-generated globally unique vector ID.
|
Vector |
increment(int idx,
double val)
Increments value at given index.
|
Vector |
incrementX(int idx,
double val)
Increments value at given index without checking for index boundaries.
|
double |
kNorm(double power)
Gets the k-norm of the vector.
|
default <L> LabeledVector<L> |
labeled(L lbl)
Creates
LabeledVector instance. |
Vector |
like(int crd)
Creates new empty vector of the same underlying class but of different cardinality.
|
Matrix |
likeMatrix(int rows,
int cols)
Creates new matrix of compatible flavor with given size.
|
Vector |
logNormalize()
Creates new vector containing the
log(1 + entry) / L_2 norm values of this vector. |
Vector |
logNormalize(double power)
Creates new vector with a normalized value calculated as
log_power(1 + entry) / L_power norm . |
Vector |
map(IgniteBiFunction<Double,Double,Double> fun,
double y)
Maps all elements of this vector by applying given function to each element with a constant
second parameter
y . |
Vector |
map(IgniteDoubleFunction<Double> fun)
Maps all values in this vector through a given function.
|
Vector |
map(Vector vec,
IgniteBiFunction<Double,Double,Double> fun)
Maps all values in this vector through a given function.
|
Vector.Element |
maxElement()
Gets maximum element in this vector.
|
double |
maxValue()
Gets maximum value in this vector.
|
Vector.Element |
minElement()
Gets minimal element in this vector.
|
Vector |
minus(Vector vec)
Creates new vector containing element by element difference between this vector and the argument one.
|
double |
minValue()
Gets minimal value in this vector.
|
int |
nonZeroElements()
Gets number of non-zero elements in this vector.
|
Iterable<Vector.Element> |
nonZeroes()
Iterates ove all non-zero elements in this vector.
|
Spliterator<Double> |
nonZeroSpliterator()
Gets spliterator for all non-zero values in this vector.
|
Vector |
normalize()
Creates new vector containing the normalized (L_2 norm) values of this vector.
|
Vector |
normalize(double power)
Creates new vector containing the normalized (L_power norm) values of this vector.
|
Vector |
plus(double x)
Creates new vector containing sum of each element in this vector and argument.
|
Vector |
plus(Vector vec)
Creates new vector containing element by element sum from both vectors.
|
Vector |
set(int idx,
double val)
Sets value.
|
Vector |
setRaw(int idx,
Serializable val)
Sets value.
|
Vector |
setRawX(int idx,
Serializable val)
Sets value without checking for index boundaries.
|
Vector |
setX(int idx,
double val)
Sets value without checking for index boundaries.
|
int |
size()
Gets cardinality of this vector (maximum number of the elements).
|
Vector |
sort()
Sorts this vector in ascending order.
|
double |
sum()
Gets the sum of all elements in this vector.
|
Vector |
times(double x)
Gets a new vector that contains product of each element and the argument.
|
Vector |
times(Vector vec)
Gets a new vector that is an element-wie product of this vector and the argument.
|
Matrix |
toMatrix(boolean rowLike)
Converts this vector into [N x 1] or [1 x N] matrix where N is this vector cardinality.
|
Matrix |
toMatrixPlusOne(boolean rowLike,
double zeroVal)
Converts this vector into [N+1 x 1] or [1 x N+1] matrix where N is this vector cardinality
|
Vector |
viewPart(int off,
int len) |
getAttribute, getMetaStorage, hasAttribute, removeAttribute, setAttribute
readExternal, writeExternal
isArrayBased, isDense, isDistributed, isNumeric
destroy
int size()
Vector copy()
Iterable<Vector.Element> all()
Vector.Element
instance so you need to copy it
if you want to retain it outside of iteration.Iterable<Vector.Element> nonZeroes()
Vector.Element
instance so you need to copy it
if you want to retain it outside of iteration.Spliterator<Double> allSpliterator()
Spliterator<Double> nonZeroSpliterator()
Vector sort()
Vector copyOfRange(int from, int to)
from
- the initial index of the range to be copied, inclusiveto
- the final index of the range to be copied, exclusive.
(This index may lie outside the array.)Vector.Element getElement(int idx)
Vector.Element
instance so you need to copy it
if you want to retain it outside of iteration.idx
- Element's index.IndexException
- Throw if index is out of bounds.Vector assign(double val)
val
- Value to assign.Vector assign(double[] vals)
vals
- Values to assign.CardinalityException
- Thrown if cardinalities mismatch.Vector assign(Vector vec)
vec
- Argument vector.CardinalityException
- Thrown if cardinalities mismatch.Vector assign(IntToDoubleFunction fun)
fun
- Function that takes the index and returns value.Vector map(IgniteDoubleFunction<Double> fun)
fun
- Mapping function.Vector map(Vector vec, IgniteBiFunction<Double,Double,Double> fun)
A
, argument vector B
and the
function F
this method maps every element x
as:
A(x) = F(A(x), B(x))
vec
- Argument vector.fun
- Mapping function.CardinalityException
- Thrown if cardinalities mismatch.Vector map(IgniteBiFunction<Double,Double,Double> fun, double y)
y
.fun
- Mapping function.y
- Second parameter for mapping function.Vector divide(double x)
x
- Division argument.double dot(Vector vec)
vec
- Argument vector.double get(int idx)
idx
- Vector index.IndexException
- Throw if index is out of bounds.double getX(int idx)
idx
- Vector index.<T extends Serializable> T getRaw(int idx)
idx
- Vector index.IndexException
- Throw if index is out of bounds.<T extends Serializable> T getRawX(int idx)
idx
- Vector index.Vector like(int crd)
crd
- Cardinality for new vector.Matrix likeMatrix(int rows, int cols)
rows
- Number of rows.cols
- Number of columns.Matrix toMatrix(boolean rowLike)
rowLike
- true
for rowLike [N x 1], or false
for column [1 x N] matrix.Matrix toMatrixPlusOne(boolean rowLike, double zeroVal)
zeroVal
parameter.rowLike
- true
for rowLike [N+1 x 1], or false
for column [1 x N+1] matrix.Vector minus(Vector vec)
vec
- Argument vector.CardinalityException
- Thrown if cardinalities mismatch.Vector normalize()
Vector normalize(double power)
power
- The power to use. Must be >= 0. May also be Double.POSITIVE_INFINITY
.x
such that norm(x, power) == 1
Vector logNormalize()
log(1 + entry) / L_2 norm
values of this vector.Vector logNormalize(double power)
log_power(1 + entry) / L_power norm
.power
- The power to use. Must be > 1. Cannot be Double.POSITIVE_INFINITY
.double kNorm(double power)
power
- The power to use.normalize(double)
double minValue()
double maxValue()
Vector.Element minElement()
Vector.Element maxElement()
Vector plus(double x)
x
- Argument value.Vector plus(Vector vec)
vec
- Other argument vector to add.CardinalityException
- Thrown if cardinalities mismatch.Vector set(int idx, double val)
idx
- Vector index to set value at.val
- Value to set.IndexException
- Throw if index is out of bounds.Vector setX(int idx, double val)
idx
- Vector index to set value at.val
- Value to set.Vector setRaw(int idx, Serializable val)
idx
- Vector index to set value at.val
- Value to set.IndexException
- Throw if index is out of bounds.Vector setRawX(int idx, Serializable val)
idx
- Vector index to set value at.val
- Value to set.Vector incrementX(int idx, double val)
idx
- Vector index.val
- Increment value.Vector increment(int idx, double val)
idx
- Vector index.val
- Increment value.IndexException
- Throw if index is out of bounds.int nonZeroElements()
Vector times(double x)
x
- Multiply argument.Vector times(Vector vec)
vec
- Vector to multiply by.CardinalityException
- Thrown if cardinalities mismatch.Vector viewPart(int off, int len)
off
- Offset into parent vector.len
- Length of the view.VectorStorage getStorage()
double sum()
Matrix cross(Vector vec)
vec
- Second vector.<T> T foldMap(IgniteBiFunction<T,Double,T> foldFun, IgniteDoubleFunction<Double> mapFun, T zeroVal)
T
- Type of the folded value.foldFun
- Folding function that takes two parameters: accumulator and the current value.mapFun
- Mapping function that is called on each vector element before its passed to the accumulator (as its
second parameter).zeroVal
- Zero value for fold operation.<T> T foldMap(Vector vec, IgniteBiFunction<T,Double,T> foldFun, IgniteBiFunction<Double,Double,Double> combFun, T zeroVal)
T
- Type of the folded value.vec
- Another vector to combine with.foldFun
- Folding function.combFun
- Combine function.zeroVal
- Zero value for fold operation.CardinalityException
- Thrown when cardinalities mismatch.double getLengthSquared()
double getDistanceSquared(Vector vec)
vec
- Another vector.CardinalityException
- Thrown if cardinalities mismatch.IgniteUuid guid()
void compute(int i, IgniteIntDoubleToDoubleBiFunction f)
i
- Position.f
- Function used for replacing.default double[] asArray()
default <L> LabeledVector<L> labeled(L lbl)
LabeledVector
instance.L
- Label class.lbl
- Label value.
GridGain In-Memory Computing Platform : ver. 8.9.15 Release Date : December 3 2024