@Override public boolean visit(double val, int row, int col, boolean selrow, boolean selcol) { assert (selrow); final double rowMean = rowM[row]; double v = val - rowMean - bias; colResidue.put(v * v); return false; } });
@Override protected MeanVariance makeObject() { return new MeanVariance(); } }
@Override public MeanVariance put(double[] vals, double[] weights) { assert (vals.length == weights.length); for(int i = 0, end = vals.length; i < end; i++) { // TODO: use a two-pass update as in the other put put(vals[i], weights[i]); } return this; }
/** * Get the current minimum and maximum. * * @return current minimum and maximum */ public DoubleMinMax getDoubleMinMax() { return new DoubleMinMax(this.min, this.max); }
private static double[][] xMatrix(double[] x, int p) { int n = x.length; double[][] result = new double[n][p + 1]; for(int i = 0; i < n; i++) { for(int j = 0; j < p + 1; j++) { result[i][j] = MathUtil.powi(x[i], j); } } return result; }
@Override public MeanVariance put(double[] vals, double[] weights) { assert (vals.length == weights.length); for(int i = 0, end = vals.length; i < end; i++) { // TODO: use a two-pass update as in the other put put(vals[i], weights[i]); } return this; }
@Override public void reset() { super.reset(); min = Double.POSITIVE_INFINITY; max = Double.NEGATIVE_INFINITY; } }
/** * Robust log 2, that ignores zero values. * * @param x Input value * @return Log2(x), or zero. */ private static double log2OrZero(double x) { return x > 0 ? MathUtil.log2(x) : 0; }
@Override public void reset() { super.reset(); m3 = 0; m4 = 0; } }
@Override public StatisticalMoments put(double[] vals) { for(double v : vals) { put(v); } return this; }
@Override public double distance(NumberVector v1, NumberVector v2) { final double pcc = PearsonCorrelation.weightedCoefficient(v1, v2, weights); return 1 - pcc * pcc; }
@Override public double distance(NumberVector v1, NumberVector v2) { final double pcc = PearsonCorrelation.coefficient(v1, v2); return 1 - pcc * pcc; }
/** * Get Sinus by step value. * * @param step Step value * @return Sinus */ @Override public double sin(int step) { return -cos(step + quarsteps); } }
@Override public boolean visit(double val, int row, int col, boolean selrow, boolean selcol) { assert (selcol); final double rowMean = rowM[row]; final double colMean = colM[col]; double v = ((!rowinverted) ? (val - rowMean) : (rowMean - val)) - colMean + allM; rowResidue.put(v * v); return false; } });
@Override public void reset() { super.reset(); min = Double.POSITIVE_INFINITY; max = Double.NEGATIVE_INFINITY; } }
@Override public boolean visit(double val, int row, int col, boolean selrow, boolean selcol) { assert (selrow && selcol); double v = val - rowM[row] - colM[col] + allM; msr.put(v * v); return false; } });