Package jdistlib.math
Class VectorMath
java.lang.Object
jdistlib.math.VectorMath
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic final doubleaad(double[] e) Average Absolute Deviation (AAD) (i.e., mean(abs(e - median(e))))static final booleanallEq(double[] e, double v) static final booleanallEqual(double[] e, double[] v) static final booleanallEqual(double[] a, double[] b, double tol) static final booleanallEqualScaled(double[] a, double[] b, double tol) static final booleanallFinite(double[] e) static final booleanallGt(double[] e, double v) static final booleanallLt(double[] e, double v) static final double[]as_numeric(Collection<String> ll) static final double[]cumsum(double[] e) static final int[]cumsum(int[] e) static final double[]diff(double[] e) static final double[]diff(double[] e, int lag) static final double[]diff(double[] e, int lag, int order) static final doubledistance(double[] e) Euclidian distance / Root mean squarestatic final doubledot(double[] e, double[] w) Weighted sum / Dot productstatic final doubledot(double[] e, int[] w) Weighted sum / Dot productstatic final doubledot(int[] e, double[] w) Weighted sum / Dot productstatic final doubledot(int[] e, int[] w) Weighted sum / Dot productstatic final doublegeom_mean(double[] e) Geometric meanstatic final doublegeom_sd(double[] e) Geometric standard deviation (per Bug #34 request)static final doubleharm_mean(double[] e) Harmonic meanstatic final doubleiqr(double[] e) Inter-quartile range (i.e., Q3 - Q1)static final booleanisEqual(double a, double b, double tol) static final booleanisEqualScaled(double a, double b, double tol) static final booleanisSorted(double[] a, boolean ascending) static final doublelog_prod(double[] e) Log of product of numbers.static final doublemad(double[] e) Compute the Median Absolute Deviation (MAD) (i.e., median(abs(e - median(e))))static final doublemax(double[] e) static final doublemaxdev(double[] e) Maximum deviation (i.e., max(abs(e - median(e))))static final doublemean(double[] e) static final doublemedian(double[] e) Get the medianstatic final doublemidhinge(double[] e) Mid hinge.static final doublemidrange(double[] e) Mid-range of e (i.e., (max(e) + min(e)) / 2)static final doublemin(double[] e) static final double[]pmax(double[] a, double[] b) static final double[]pmin(double[] a, double[] b) static final doubleprod(double[] e) Product of numbers.static final doublequantile(double[] sortedData, double quantile) Find quantile given a sorted data of array (Definition 7)static final double[]quantile(double[] sortedData, double[] quantile) Find quantile given a sorted data of array (Definition 7)static final doublequantile0(double[] e, double quantile) Find quantile in an array (Definition 7).static final double[]quantile0(double[] e, double[] quantile) Find quantile in an array (Definition 7).static final double[]range(double[] e) static final doublerelativeDiff(double[] a, double[] b) static final doublesd(double[] e) static final double[]standardize(double[] x) Standardize the value in x (i.e., (x - mean(x)) / sd(x))static final doublesum(double[] e) static final doublesum(int[] e) static final doublestatic final doublesum_kahan(double[] e) static final double[]summary(double[] e) Return summary statisticstable(double[] e) table(T[] e) static final doubletrimean(double[] e) Trimean (Q1 + 2Q2 + Q3) / 4static final doubletrimmed_mean(double[] e, double lower, double upper) Trimmed mean of values.static final double[]vabs(double[] e) static final doublevar(double[] e) static final double[]vcomp(double[] e) static final double[]vdiv(double[] a, double b) static final double[]vdiv(double[] a, double[] b) static final double[]vdiv(double a, double[] b) static final double[]vexp(double[] e) static final double[]vlog(double[] e) static final double[]vlog1pComps(double[] e) static final double[]vmin(double[] e) static final double[]vmin(double[] a, double b) static final double[]vmin(double[] a, double[] b) static final double[]vmin(double a, double[] b) static final double[]vplus(double[] a, double b) static final double[]vplus(double[] a, double[] b) static final double[]vplus(double a, double[] b) static final double[]vpow(double[] x, double e) static final double[]vpow(double[] x, double[] e) static final double[]vpow(double x, double[] e) static final double[]vpow(double x, int[] e) static final double[]vpow(int[] x, int[] e) static final int[]vsgn(double[] e) Vector signum.static final int[]vsgn(int[] e) static final double[]vsignif(double[] e, int digits) static final double[]vsq(double[] a) static final double[]vtimes(double[] a, double b) static final double[]vtimes(double[] a, double[] b) static final double[]vtimes(double a, double[] b) static final intwhich_max(double[] e) static final intwhich_max(int[] e) static final intwhich_min(double[] e) static final intwhich_min(int[] e) static final doublewinsor_mean(double[] e, double lower, double upper) Winsorized mean of values.
-
Constructor Details
-
VectorMath
public VectorMath()
-
-
Method Details
-
vpow
public static final double[] vpow(double x, double[] e) -
vpow
public static final double[] vpow(double[] x, double e) -
vpow
public static final double[] vpow(double[] x, double[] e) -
vpow
public static final double[] vpow(int[] x, int[] e) -
vpow
public static final double[] vpow(double x, int[] e) -
vplus
public static final double[] vplus(double[] a, double[] b) -
vplus
public static final double[] vplus(double a, double[] b) -
vplus
public static final double[] vplus(double[] a, double b) -
vmin
public static final double[] vmin(double[] e) -
vmin
public static final double[] vmin(double[] a, double[] b) -
vmin
public static final double[] vmin(double[] a, double b) -
vmin
public static final double[] vmin(double a, double[] b) -
vtimes
public static final double[] vtimes(double a, double[] b) -
vtimes
public static final double[] vtimes(double[] a, double b) -
vtimes
public static final double[] vtimes(double[] a, double[] b) -
vsq
public static final double[] vsq(double[] a) -
vdiv
public static final double[] vdiv(double[] a, double b) -
vdiv
public static final double[] vdiv(double a, double[] b) -
vdiv
public static final double[] vdiv(double[] a, double[] b) -
vcomp
public static final double[] vcomp(double[] e) -
vabs
public static final double[] vabs(double[] e) -
vexp
public static final double[] vexp(double[] e) -
vlog
public static final double[] vlog(double[] e) -
vlog1pComps
public static final double[] vlog1pComps(double[] e) -
vsignif
public static final double[] vsignif(double[] e, int digits) -
vsgn
public static final int[] vsgn(double[] e) Vector signum.- Parameters:
e-- Returns:
- -1 if e[i] < 0; 0 if e[i] == 0; 1 if e[i] > 0
-
vsgn
public static final int[] vsgn(int[] e) -
diff
public static final double[] diff(double[] e, int lag, int order) -
diff
public static final double[] diff(double[] e, int lag) -
diff
public static final double[] diff(double[] e) -
allFinite
public static final boolean allFinite(double[] e) -
allLt
public static final boolean allLt(double[] e, double v) -
allGt
public static final boolean allGt(double[] e, double v) -
allEq
public static final boolean allEq(double[] e, double v) -
allEqual
public static final boolean allEqual(double[] e, double[] v) -
quantile
public static final double quantile(double[] sortedData, double quantile) Find quantile given a sorted data of array (Definition 7)- Parameters:
sortedData- This data is assumed to be presorted! Use quantile0 if you want to use unsorted data!quantile- must be 0 <= quantile <= 1- Returns:
- quantile value
-
quantile
public static final double[] quantile(double[] sortedData, double[] quantile) Find quantile given a sorted data of array (Definition 7)- Parameters:
sortedData- This data is assumed to be presorted!quantile-- Returns:
- quantile values
-
quantile0
public static final double quantile0(double[] e, double quantile) Find quantile in an array (Definition 7). Data is assumed to be unsorted- Parameters:
e-quantile- must be 0 <= quantile <= 1- Returns:
- quantile value
-
quantile0
public static final double[] quantile0(double[] e, double[] quantile) Find quantile in an array (Definition 7). Data is assumed to be unsorted- Parameters:
e-quantile- must be 0 <= quantile <= 1- Returns:
- quantile values
-
mean
public static final double mean(double[] e) -
distance
public static final double distance(double[] e) Euclidian distance / Root mean square- Parameters:
e-- Returns:
- sqrt(mean(e * e))
-
summary
public static final double[] summary(double[] e) Return summary statistics- Parameters:
e-- Returns:
- an array of 6 elements: Min, Q1, Median, Mean, Q3, Max
-
median
public static final double median(double[] e) Get the median- Parameters:
e- does not need to be sorted- Returns:
- median value
-
sd
public static final double sd(double[] e) -
var
public static final double var(double[] e) -
sum
public static final double sum(double[] e) -
sum
public static final double sum(int[] e) -
prod
public static final double prod(double[] e) Product of numbers. Implemented as exp(sum(log(e))).- Parameters:
e-- Returns:
- e[0] * e[1] * ... * e[n-1]
-
log_prod
public static final double log_prod(double[] e) Log of product of numbers. Implemented as sum(log(e)).- Parameters:
e-- Returns:
- log(e[0]) + log(e[1]) + ... + log(e[n-1])
-
geom_mean
public static final double geom_mean(double[] e) Geometric mean- Parameters:
e-
-
geom_sd
public static final double geom_sd(double[] e) Geometric standard deviation (per Bug #34 request)- Parameters:
e-
-
harm_mean
public static final double harm_mean(double[] e) Harmonic mean- Parameters:
e-
-
dot
public static final double dot(double[] e, double[] w) Weighted sum / Dot product- Parameters:
e-w-- Returns:
- sum(e * w)
-
dot
public static final double dot(int[] e, double[] w) Weighted sum / Dot product- Parameters:
e-w-- Returns:
- sum(e * w)
-
dot
public static final double dot(double[] e, int[] w) Weighted sum / Dot product- Parameters:
e-w-- Returns:
- sum(e * w)
-
dot
public static final double dot(int[] e, int[] w) Weighted sum / Dot product- Parameters:
e-w-- Returns:
- sum(e * w)
-
trimmed_mean
public static final double trimmed_mean(double[] e, double lower, double upper) Trimmed mean of values. Lower and upper are the percentile. For example: trimmed_mean(e, 0.25, 0.75) means average all values between 0.25 and 0.75 percentile inclusive.- Parameters:
e-lower- must be between 0 and 1upper- must be between 0 and 1- Returns:
- trimmed mean.
-
winsor_mean
public static final double winsor_mean(double[] e, double lower, double upper) Winsorized mean of values. Lower and upper are the percentile. For example: winsor_mean(e, 0.25, 0.75) means average all values between 0.25 and 0.75 percentile inclusive, the rest will be replaced by the boundary value (i.e., values lower than 0.25 percentile will be capped at 0.25 percentile and values higher than 0.75 percentile will be capped at 0.75 percentile).- Parameters:
e-lower- must be between 0 and 1upper- must be between 0 and 1- Returns:
- winsorized mean.
-
sum_kahan
public static final double sum_kahan(double[] e) -
sum
-
mad
public static final double mad(double[] e) Compute the Median Absolute Deviation (MAD) (i.e., median(abs(e - median(e))))- Parameters:
e- does not need to be sorted- Returns:
- MAD value
-
aad
public static final double aad(double[] e) Average Absolute Deviation (AAD) (i.e., mean(abs(e - median(e))))- Parameters:
e- does not need to be sorted- Returns:
- AAD value
-
maxdev
public static final double maxdev(double[] e) Maximum deviation (i.e., max(abs(e - median(e))))- Parameters:
e-
-
standardize
public static final double[] standardize(double[] x) Standardize the value in x (i.e., (x - mean(x)) / sd(x))- Parameters:
x-- Returns:
- standardized values
-
table
-
table
-
as_numeric
-
cumsum
public static final double[] cumsum(double[] e) -
cumsum
public static final int[] cumsum(int[] e) -
max
public static final double max(double[] e) -
min
public static final double min(double[] e) -
midrange
public static final double midrange(double[] e) Mid-range of e (i.e., (max(e) + min(e)) / 2)- Parameters:
e-
-
which_max
public static final int which_max(double[] e) -
which_min
public static final int which_min(double[] e) -
which_max
public static final int which_max(int[] e) -
which_min
public static final int which_min(int[] e) -
pmax
public static final double[] pmax(double[] a, double[] b) -
pmin
public static final double[] pmin(double[] a, double[] b) -
range
public static final double[] range(double[] e) -
iqr
public static final double iqr(double[] e) Inter-quartile range (i.e., Q3 - Q1)- Parameters:
e-
-
midhinge
public static final double midhinge(double[] e) Mid hinge. (Q1 + Q3) / 2.0- Parameters:
e-
-
trimean
public static final double trimean(double[] e) Trimean (Q1 + 2Q2 + Q3) / 4- Parameters:
e-
-
isEqual
public static final boolean isEqual(double a, double b, double tol) -
isEqualScaled
public static final boolean isEqualScaled(double a, double b, double tol) -
relativeDiff
public static final double relativeDiff(double[] a, double[] b) -
allEqual
public static final boolean allEqual(double[] a, double[] b, double tol) -
allEqualScaled
public static final boolean allEqualScaled(double[] a, double[] b, double tol) -
isSorted
public static final boolean isSorted(double[] a, boolean ascending)
-