Package weka.core.matrix
Class DoubleVector
java.lang.Object
weka.core.matrix.DoubleVector
- All Implemented Interfaces:
Cloneable
,RevisionHandler
A vector specialized on doubles.
- Version:
- $Revision: 10203 $
- Author:
- Yong Wang
-
Constructor Summary
ConstructorDescriptionConstructs a null vector.DoubleVector
(double[] v) Constructs a vector directly from a double arrayDoubleVector
(int n) Constructs an n-vector of zeros.DoubleVector
(int n, double s) Constructs a constant n-vector. -
Method Summary
Modifier and TypeMethodDescriptionvoid
addElement
(double x) Adds an element into the vectorint
capacity()
Gets the capacity of the vector.cat
(DoubleVector v) Combine two vectors togetherclone()
Clones the DoubleVector object.copy()
Makes a deep copy of the vectorcumulate()
Returns a vector that stores the cumulated values of the original vectorCumulates the original vector in placeDivided by another DoubleVector element by elementDivided by another DoubleVector element by element in placedouble
get
(int i) Gets a single element.double[]
getArray()
Access the internal one-dimensional array.double[]
Returns a copy of the DoubleVector usng a double array.Returns the revision string.int
Returns the index of the maximum.double
Returns the inner product of two DoubleVectorsboolean
isEmpty()
Checks if it is an empty vectorstatic void
Applies a method to the vectordouble
max()
Returns the maximum value of all elementsminus
(double x) Subtracts a valueSubtracts another DoubleVector element by elementminusEquals
(double x) Subtracts a value in placeSubtracts another DoubleVector element by element in placedouble
norm1()
Returns the L1-norm of the vectordouble
norm2()
Returns the L2-norm of the vectorplus
(double x) Adds a value to all the elementsplus
(DoubleVector v) Adds another vector element by elementplusEquals
(double x) Adds a value to all the elements in placeAdds another vector in place element by elementstatic DoubleVector
random
(int n) Returns a random vector of uniform distributionrev()
Returns the reverse vectorvoid
set
(double s) Set all elements to a valuevoid
set
(int i, double s) Set a single element.void
set
(int i0, int i1, double s) Set some elements to a valuevoid
set
(int i0, int i1, double[] v, int j0) Set some elements using a 2-D arrayvoid
set
(int i0, int i1, DoubleVector v, int j0) Set some elements using a DoubleVector.void
set
(DoubleVector v) Set the elements using a DoubleVectorvoid
setCapacity
(int n) Sets the capacity of the vectorvoid
setPlus
(int i, double s) Adds a value to an elementvoid
setSize
(int m) Sets the size of the vectorvoid
setTimes
(int i, double s) Multiplies a value to an elementsign()
Returns the signs of all elements in terms of -1, 0 and +1.int
size()
Gets the size of the vector.void
sort()
Sorts the array in placeSorts the array in place with index returnedvoid
sortWithIndex
(int xi, int xj, IntVector index) Sorts the array in place with index changedsqrt()
Returns the square-root of all the elements in the vectorsquare()
Returns the squared vectorsubvector
(int i0, int i1) Returns a subvector.Returns a subvector.double
sum()
Returns the sum of all elements in the vector.double
sum2()
Returns the squared sum of all elements in the vector.double
sum2
(DoubleVector v) Returns ||u-v||^2void
swap
(int i, int j) Swaps the values stored at i and jtimes
(double s) Multiplies a scalarMultiplies another DoubleVector element by elementtimesEquals
(double s) Multiply a vector by a scalar in place, u = s * uMultiplies another DoubleVector element by element in placetoString()
Convert the DoubleVecor to a stringtoString
(int digits, boolean trailing) Convert the DoubleVecor to a stringunpivoting
(IntVector index, int length) Returns a vector from the pivoting indices.boolean
unsorted()
Returns true if vector not sorted
-
Constructor Details
-
DoubleVector
public DoubleVector()Constructs a null vector. -
DoubleVector
public DoubleVector(int n) Constructs an n-vector of zeros.- Parameters:
n
- length.
-
DoubleVector
public DoubleVector(int n, double s) Constructs a constant n-vector.- Parameters:
n
- length.s
- the scalar value used to fill the vector
-
DoubleVector
public DoubleVector(double[] v) Constructs a vector directly from a double array- Parameters:
v
- the array
-
-
Method Details
-
set
public void set(int i, double s) Set a single element.- Parameters:
i
- Index.s
- a[i].
-
set
public void set(double s) Set all elements to a value- Parameters:
s
- the value
-
set
public void set(int i0, int i1, double s) Set some elements to a value- Parameters:
i0
- the index of the first elementi1
- the index of the second elements
- the value
-
set
public void set(int i0, int i1, double[] v, int j0) Set some elements using a 2-D array- Parameters:
i0
- the index of the first elementi1
- the index of the second elementj0
- the index of the starting element in the 2-D arrayv
- the values
-
set
Set the elements using a DoubleVector- Parameters:
v
- the DoubleVector
-
set
Set some elements using a DoubleVector.- Parameters:
i0
- the index of the first elementi1
- the index of the second elementv
- the DoubleVectorj0
- the index of the starting element in the DoubleVector
-
getArray
public double[] getArray()Access the internal one-dimensional array.- Returns:
- Pointer to the one-dimensional array of vector elements.
-
getArrayCopy
public double[] getArrayCopy()Returns a copy of the DoubleVector usng a double array.- Returns:
- the one-dimensional array.
-
sort
public void sort()Sorts the array in place -
sortWithIndex
Sorts the array in place with index returned -
sortWithIndex
Sorts the array in place with index changed- Parameters:
xi
- first indexxj
- last indexindex
- array that stores all indices
-
size
public int size()Gets the size of the vector.- Returns:
- the size
-
setSize
public void setSize(int m) Sets the size of the vector- Parameters:
m
- the size
-
capacity
public int capacity()Gets the capacity of the vector.- Returns:
- the capacity.
-
setCapacity
public void setCapacity(int n) Sets the capacity of the vector- Parameters:
n
- the capacity.
-
get
public double get(int i) Gets a single element.- Parameters:
i
- Index.- Returns:
- the value of the i-th element
-
setPlus
public void setPlus(int i, double s) Adds a value to an element- Parameters:
i
- the index of the elements
- the value
-
setTimes
public void setTimes(int i, double s) Multiplies a value to an element- Parameters:
i
- the index of the elements
- the value
-
addElement
public void addElement(double x) Adds an element into the vector- Parameters:
x
- the value of the new element
-
square
Returns the squared vector -
sqrt
Returns the square-root of all the elements in the vector -
copy
Makes a deep copy of the vector -
clone
Clones the DoubleVector object. -
innerProduct
Returns the inner product of two DoubleVectors- Parameters:
v
- the second DoubleVector- Returns:
- the product
-
sign
Returns the signs of all elements in terms of -1, 0 and +1. -
sum
public double sum()Returns the sum of all elements in the vector. -
sum2
public double sum2()Returns the squared sum of all elements in the vector. -
norm1
public double norm1()Returns the L1-norm of the vector -
norm2
public double norm2()Returns the L2-norm of the vector -
sum2
Returns ||u-v||^2- Parameters:
v
- the second vector
-
subvector
Returns a subvector.- Parameters:
i0
- the index of the first elementi1
- the index of the last element- Returns:
- v[i0:i1]
-
subvector
Returns a subvector.- Parameters:
index
- stores the indices of the needed elements- Returns:
- v[index]
-
unpivoting
Returns a vector from the pivoting indices. Elements not indexed are set to zero.- Parameters:
index
- stores the pivoting indiceslength
- the total number of the potential elements- Returns:
- the subvector
-
plus
Adds a value to all the elements- Parameters:
x
- the value
-
plusEquals
Adds a value to all the elements in place- Parameters:
x
- the value
-
plus
Adds another vector element by element- Parameters:
v
- the second vector
-
plusEquals
Adds another vector in place element by element- Parameters:
v
- the second vector
-
minus
Subtracts a value- Parameters:
x
- the value
-
minusEquals
Subtracts a value in place- Parameters:
x
- the value
-
minus
Subtracts another DoubleVector element by element- Parameters:
v
- the second DoubleVector
-
minusEquals
Subtracts another DoubleVector element by element in place- Parameters:
v
- the second DoubleVector
-
times
Multiplies a scalar- Parameters:
s
- scalar- Returns:
- s * v
-
timesEquals
Multiply a vector by a scalar in place, u = s * u- Parameters:
s
- scalar- Returns:
- replace u by s * u
-
times
Multiplies another DoubleVector element by element- Parameters:
v
- the second DoubleVector
-
timesEquals
Multiplies another DoubleVector element by element in place- Parameters:
v
- the second DoubleVector
-
dividedBy
Divided by another DoubleVector element by element- Parameters:
v
- the second DoubleVector
-
dividedByEquals
Divided by another DoubleVector element by element in place- Parameters:
v
- the second DoubleVector
-
isEmpty
public boolean isEmpty()Checks if it is an empty vector -
cumulate
Returns a vector that stores the cumulated values of the original vector -
cumulateInPlace
Cumulates the original vector in place -
indexOfMax
public int indexOfMax()Returns the index of the maximum.If multiple maximums exist, the index of the first is returned.
-
unsorted
public boolean unsorted()Returns true if vector not sorted -
cat
Combine two vectors together- Parameters:
v
- the second vector
-
swap
public void swap(int i, int j) Swaps the values stored at i and j- Parameters:
i
- the index ij
- the index j
-
max
public double max()Returns the maximum value of all elements -
map
Applies a method to the vector- Parameters:
className
- the class namemethod
- the method
-
rev
Returns the reverse vector -
random
Returns a random vector of uniform distribution- Parameters:
n
- the size of the vector
-
toString
Convert the DoubleVecor to a string -
toString
Convert the DoubleVecor to a string- Parameters:
digits
- the number of digits after decimal pointtrailing
- true if trailing zeros are to be shown
-
getRevision
Returns the revision string.- Specified by:
getRevision
in interfaceRevisionHandler
- Returns:
- the revision
-
main
-