|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.mahout.math.AbstractVector
public abstract class AbstractVector
Implementations of generic capabilities like sum of elements and dot products
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface org.apache.mahout.math.Vector |
---|
Vector.Element |
Field Summary | |
---|---|
protected double |
lengthSquared
|
protected int |
size
|
Constructor Summary | |
---|---|
protected |
AbstractVector()
|
protected |
AbstractVector(java.lang.String name)
|
protected |
AbstractVector(java.lang.String name,
int size)
|
Method Summary | |
---|---|
void |
addTo(Vector v)
Add the elements to the other vector and results are stored in that vector. |
double |
aggregate(BinaryFunction aggregator,
UnaryFunction map)
Examples speak louder than words: aggregate(plus, pow(2)) is another way to say getLengthSquared(), aggregate(max, abs) is norm(Double.POSITIVE_INFINITY). |
double |
aggregate(Vector other,
BinaryFunction aggregator,
BinaryFunction combiner)
Generalized inner product - take two vectors, iterate over them both, using the combiner to combine together (and possibly map in some way) each pair of values, which are then aggregated with the previous accumulated value in the combiner. |
java.lang.String |
asFormatString()
|
Vector |
assign(BinaryFunction f,
double y)
Apply the function to each element of the receiver, using the y value as the second argument of the BinaryFunction |
Vector |
assign(double value)
Assign the value to all elements of the receiver |
Vector |
assign(double[] values)
Assign the values to the receiver |
Vector |
assign(UnaryFunction function)
Apply the function to each element of the receiver |
Vector |
assign(Vector other)
Assign the other matrix values to the receiver |
Vector |
assign(Vector other,
BinaryFunction function)
Apply the function to each element of the receiver and the corresponding element of the other argument |
Vector |
clone()
Return a copy of the recipient |
Matrix |
cross(Vector other)
Return the cross product of the receiver and the other vector |
static Vector |
decodeVector(java.lang.String formattedString)
Decodes a point from its string representation. |
Vector |
divide(double x)
Return a new matrix containing the values of the recipient divided by the argument |
double |
dot(Vector x)
Return the dot product of the recipient and the argument |
double |
dotSelf()
|
static boolean |
equivalent(Vector left,
Vector right)
Compare whether two Vector implementations have the same elements, regardless of the implementation and name. |
double |
get(int index)
Return the value at the given index |
double |
get(java.lang.String label)
Return the value at the index defined by the label |
double |
getDistanceSquared(Vector v)
Get the square of the distance between this vector and the other vector. |
java.util.Map<java.lang.String,java.lang.Integer> |
getLabelBindings()
Return a map of the current label bindings of the receiver |
double |
getLengthSquared()
Return the sum of squares of all elements in the vector. |
java.lang.String |
getName()
Vectors may have a name associated with them, which makes them easy to identify |
int |
hashCode()
|
protected abstract Matrix |
matrixLike(int rows,
int columns)
Subclasses must override to return an appropriately sparse or dense result |
double |
maxValue()
|
int |
maxValueIndex()
|
Vector |
minus(Vector x)
Return a new matrix containing the element by element difference of the recipient and the argument |
double |
norm(double power)
Return the k-norm of the vector. |
Vector |
normalize()
Return a new matrix containing the normalized (L_2 norm) values of the recipient |
Vector |
normalize(double power)
Return a new Vector containing the normalized (L_power norm) values of the recipient. |
Vector |
plus(double x)
Return a new matrix containing the sum of each value of the recipient and the argument |
Vector |
plus(Vector x)
Return a new matrix containing the element by element sum of the recipient and the argument |
void |
set(int index,
double value)
Set the value at the given index |
void |
set(java.lang.String label,
double value)
Set the value at the index that is mapped to the label |
void |
set(java.lang.String label,
int index,
double value)
Set the value at the index and add the label to the bindings |
void |
setLabelBindings(java.util.Map<java.lang.String,java.lang.Integer> bindings)
Sets a map of label bindings in the receiver |
void |
setName(java.lang.String name)
Set a name for this vector. |
int |
size()
Return the cardinality of the recipient (the maximum number of values) |
static boolean |
strictEquivalence(Vector left,
Vector right)
Compare whether two Vector implementations are the same, including the underlying implementation. |
Vector |
times(double x)
Return a new matrix containing the product of each value of the recipient and the argument |
Vector |
times(Vector x)
Return a new matrix containing the element-wise product of the recipient and the argument |
Vector |
viewPart(int offset,
int length)
Return a new matrix containing the subset of the recipient |
double |
zSum()
Return the sum of all the elements of the receiver |
Methods inherited from class java.lang.Object |
---|
equals, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface org.apache.mahout.math.Vector |
---|
getElement, getNumNondefaultElements, getQuick, iterateAll, iterateNonZero, like, like, setQuick |
Field Detail |
---|
protected int size
protected double lengthSquared
Constructor Detail |
---|
protected AbstractVector()
protected AbstractVector(java.lang.String name)
protected AbstractVector(java.lang.String name, int size)
Method Detail |
---|
public double aggregate(BinaryFunction aggregator, UnaryFunction map)
Vector
aggregate
in interface Vector
aggregator
- used to combine the current value of the aggregation with the result of map.apply(nextValue)map
- a function to apply to each element of the vector in turn before passing to the aggregator
public double aggregate(Vector other, BinaryFunction aggregator, BinaryFunction combiner)
Vector
Generalized inner product - take two vectors, iterate over them both, using the combiner to combine together (and possibly map in some way) each pair of values, which are then aggregated with the previous accumulated value in the combiner.
Example: dot(other) could be expressed as aggregate(other, Plus, Times), and kernelized inner products (which are symmetric on the indices) work similarly.
aggregate
in interface Vector
other
- a vector to aggregate in combination with
protected abstract Matrix matrixLike(int rows, int columns)
rows
- the row cardinalitycolumns
- the column cardinality
public Vector viewPart(int offset, int length)
Vector
viewPart
in interface Vector
offset
- an int offset into the receiverlength
- the cardinality of the desired result
public Vector clone()
Vector
clone
in interface Vector
clone
in class java.lang.Object
public Vector divide(double x)
Vector
divide
in interface Vector
x
- a double value
public double dot(Vector x)
Vector
dot
in interface Vector
x
- a Vector
public double dotSelf()
public double get(int index)
Vector
get
in interface Vector
index
- an int index
public Vector minus(Vector x)
Vector
minus
in interface Vector
x
- a Vector
public Vector normalize()
Vector
normalize
in interface Vector
public Vector normalize(double power)
Vector
Double.POSITIVE_INFINITY
(max element). Again, see the Wikipedia page for more info
normalize
in interface Vector
power
- The power to use. Must be >= 0. May also be Double.POSITIVE_INFINITY
. See the Wikipedia link
for more on this.
public double norm(double power)
Vector
Double.POSITIVE_INFINITY
(max element). Again, see the Wikipedia page for
more info.
norm
in interface Vector
power
- The power to use.Vector.normalize(double)
public double getLengthSquared()
Vector
getLengthSquared
in interface Vector
public double getDistanceSquared(Vector v)
Vector
getDistanceSquared
in interface Vector
public double maxValue()
maxValue
in interface Vector
public int maxValueIndex()
maxValueIndex
in interface Vector
public Vector plus(double x)
Vector
plus
in interface Vector
x
- a double
public Vector plus(Vector x)
Vector
plus
in interface Vector
x
- a Vector
public void addTo(Vector v)
Vector
addTo
in interface Vector
public void set(int index, double value)
Vector
set
in interface Vector
index
- an int index into the receivervalue
- a double value to setpublic Vector times(double x)
Vector
times
in interface Vector
x
- a double argument
public Vector times(Vector x)
Vector
times
in interface Vector
x
- a Vector argument
public double zSum()
Vector
zSum
in interface Vector
public Vector assign(double value)
Vector
assign
in interface Vector
value
- a double value
public Vector assign(double[] values)
Vector
assign
in interface Vector
values
- a double[] of values
public Vector assign(Vector other)
Vector
assign
in interface Vector
other
- a Vector
public Vector assign(BinaryFunction f, double y)
Vector
assign
in interface Vector
f
- a BinaryFunction to be appliedy
- a double value to be argument to the function
public Vector assign(UnaryFunction function)
Vector
assign
in interface Vector
function
- a UnaryFunction to apply
public Vector assign(Vector other, BinaryFunction function)
Vector
assign
in interface Vector
other
- a Vector containing the second arguments to the functionfunction
- a BinaryFunction to apply
public Matrix cross(Vector other)
Vector
cross
in interface Vector
other
- another Vector
public static Vector decodeVector(java.lang.String formattedString)
formattedString
- a formatted String produced by asFormatString. Note the payload remainder: it is optional,
but can be present.
public java.lang.String getName()
Vector
getName
in interface Vector
public void setName(java.lang.String name)
Vector
setName
in interface Vector
name
- The namepublic int size()
Vector
size
in interface Vector
public java.lang.String asFormatString()
asFormatString
in interface Vector
public static boolean equivalent(Vector left, Vector right)
Vector.getName()
.
left
- The left hand Vector to compareright
- The right hand Vector
strictEquivalence(Vector, Vector)
,
Vector#equals(Object)
public static boolean strictEquivalence(Vector left, Vector right)
left
- The left hand Vector to compareright
- The right hand Vector
public int hashCode()
hashCode
in class java.lang.Object
public double get(java.lang.String label) throws IndexException, UnboundLabelException
Vector
get
in interface Vector
label
- a String label that maps to an index
IndexException
- if the index is out of bounds
UnboundLabelException
- if the label is unboundpublic java.util.Map<java.lang.String,java.lang.Integer> getLabelBindings()
Vector
getLabelBindings
in interface Vector
public void set(java.lang.String label, double value) throws IndexException, UnboundLabelException
Vector
set
in interface Vector
label
- a String label that maps to an indexvalue
- the double value at the index
IndexException
UnboundLabelException
public void setLabelBindings(java.util.Map<java.lang.String,java.lang.Integer> bindings)
Vector
setLabelBindings
in interface Vector
bindings
- a Map
of label bindingspublic void set(java.lang.String label, int index, double value) throws IndexException
Vector
set
in interface Vector
label
- a String label that maps to an indexindex
- an int indexvalue
- a double value
IndexException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |