Example usage for org.apache.commons.math3.stat.regression SimpleRegression addData

List of usage examples for org.apache.commons.math3.stat.regression SimpleRegression addData

Introduction

In this page you can find the example usage for org.apache.commons.math3.stat.regression SimpleRegression addData.

Prototype

public void addData(final double x, final double y) 

Source Link

Document

Adds the observation (x,y) to the regression data set.

Usage

From source file:eu.verdelhan.ta4j.indicators.statistics.SimpleLinearRegressionIndicatorTest.java

/**
 * @param values values/*  w  w  w . j  a v a 2 s. c om*/
 * @return a simple linear regression based on provided values
 */
private static SimpleRegression buildSimpleRegression(double... values) {
    SimpleRegression simpleReg = new SimpleRegression();
    for (int i = 0; i < values.length; i++) {
        simpleReg.addData(i, values[i]);
    }
    return simpleReg;
}

From source file:joinery.impl.Display.java

private static void addTrend(final Chart chart, final Series series, final List<Object> xdata) {
    final SimpleRegression model = new SimpleRegression();
    final Iterator<? extends Number> y = series.getYData().iterator();
    for (int x = 0; y.hasNext(); x++) {
        model.addData(x, y.next().doubleValue());
    }//  w w  w  .j  av a  2s.  co m
    final Color mc = series.getMarkerColor();
    final Color c = new Color(mc.getRed(), mc.getGreen(), mc.getBlue(), 0x60);
    final Series trend = chart.addSeries(series.getName() + " (trend)",
            Arrays.asList(xdata.get(0), xdata.get(xdata.size() - 1)),
            Arrays.asList(model.predict(0), model.predict(xdata.size() - 1)));
    trend.setLineColor(c);
    trend.setMarker(SeriesMarker.NONE);
}

From source file:de.qaware.chronix.timeseries.RegressionTest.java

@Test
public void testRegression() {

    SimpleRegression regression = new SimpleRegression();
    regression.addData(0.0, 1.0);
    regression.addData(1.0, 2.5);/*w ww  . j  av  a2s.  c  om*/
    regression.addData(2.0, 3.0);

    double slope = regression.getSlope();
    double intercept = regression.getIntercept();
    long n = regression.getN();
    double err = regression.getMeanSquareError();
}

From source file:jp.ac.tohoku.ecei.sb.metabolomeqc.basiccorrector.helper.RegressionTest.java

@Test
public void testRegression() {
    SimpleRegression simpleRegression = new SimpleRegression();
    simpleRegression.addData(0.0, 1);
    simpleRegression.addData(0.5, 2);/*ww  w .j a  va  2  s.c o m*/
    simpleRegression.addData(1.0, 3);
    simpleRegression.addData(1.5, 4);
    RegressionResults result = simpleRegression.regress();
    Assert.assertArrayEquals(new double[] { 1, 2 }, result.getParameterEstimates(), 0);
}

From source file:com.facebook.presto.operator.aggregation.TestDoubleRegrInterceptAggregation.java

private void testNonTrivialAggregation(Double[] y, Double[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }/*from   w ww . ja  v a 2s .  c o m*/
    double expected = regression.getIntercept();
    checkArgument(Double.isFinite(expected) && expected != 0., "Expected result is trivial");
    testAggregation(expected, createDoublesBlock(y), createDoublesBlock(x));
}

From source file:com.facebook.presto.operator.aggregation.TestDoubleRegrSlopeAggregation.java

private void testNonTrivialAggregation(Double[] y, Double[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }/* w w  w .j a  va2  s  .  c  o m*/
    double expected = regression.getSlope();
    checkArgument(Double.isFinite(expected) && expected != 0.0, "Expected result is trivial");
    testAggregation(expected, createDoublesBlock(y), createDoublesBlock(x));
}

From source file:com.facebook.presto.operator.aggregation.TestFloatRegrInterceptAggregation.java

private void testNonTrivialAggregation(Float[] y, Float[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }//  ww  w .j  av a  2s  . c o  m
    float expected = (float) regression.getIntercept();
    checkArgument(Float.isFinite(expected) && expected != 0.f, "Expected result is trivial");
    testAggregation(expected, createFloatsBlock(y), createFloatsBlock(x));
}

From source file:com.facebook.presto.operator.aggregation.TestFloatRegrSlopeAggregation.java

private void testNonTrivialAggregation(Float[] y, Float[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }//  w w w  .j av a2 s .  c  o m
    float expected = (float) regression.getSlope();
    checkArgument(Float.isFinite(expected) && expected != 0.0f, "Expected result is trivial");
    testAggregation(expected, createFloatsBlock(y), createFloatsBlock(x));
}

From source file:com.facebook.presto.operator.aggregation.TestRealRegrInterceptAggregation.java

private void testNonTrivialAggregation(Float[] y, Float[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }//w w w  .  j  a v a2  s.  co m
    float expected = (float) regression.getIntercept();
    checkArgument(Float.isFinite(expected) && expected != 0.f, "Expected result is trivial");
    testAggregation(expected, createBlockOfReals(y), createBlockOfReals(x));
}

From source file:com.facebook.presto.operator.aggregation.TestRealRegrSlopeAggregation.java

private void testNonTrivialAggregation(Float[] y, Float[] x) {
    SimpleRegression regression = new SimpleRegression();
    for (int i = 0; i < x.length; i++) {
        regression.addData(x[i], y[i]);
    }/*from   ww  w .  ja v a 2 s  .  c o  m*/
    float expected = (float) regression.getSlope();
    checkArgument(Float.isFinite(expected) && expected != 0.0f, "Expected result is trivial");
    testAggregation(expected, createBlockOfReals(y), createBlockOfReals(x));
}