Class RegressionBuilder


  • public final class RegressionBuilder
    extends Object
    Builds regressions instances.
    Author:
    Andrea "Stock" Stocchero
    • Method Detail

      • create

        public static RegressionBuilder create()
        Creates new regression builder, without any sample.
        Returns:
        new regression builder, without any sample
      • create

        public static RegressionBuilder create​(List<Double> x,
                                               List<Double> y)
        Creates new regression builder, using the passed data as samples.
        Parameters:
        x - X values to use to create the regression
        y - Y values to use to create the regression
        Returns:
        new regression builder
      • create

        public static RegressionBuilder create​(IsRegression regression)
        Creates new regression builder, using the passed regression instance.
        Parameters:
        regression - regression instance to clone
        Returns:
        new regression builder
      • create

        public static RegressionBuilder create​(RegressionDescriptor descriptor)
        Creates new regression builder, using the passed regression descriptor instance to create new regression.
        Parameters:
        descriptor - regression descriptor instance to create new regression
        Returns:
        new regression builder
      • build

        public static IsRegression build​(IsRegression regression)
        Creates new regression instance, using the passed regression instance.
        Parameters:
        regression - regression instance to clone
        Returns:
        new regression
      • build

        public static IsRegression build​(RegressionDescriptor descriptor)
        Creates new regression, using the passed regression descriptor instance to create new regression.
        Parameters:
        descriptor - regression descriptor instance to create new regression
        Returns:
        new regression
      • buildLinearRegression

        public LinearRegression buildLinearRegression()
        Creates a simple linear regression.
        Returns:
        simple linear regression instance
      • buildPolynomialRegression

        public PolynomialRegression buildPolynomialRegression()
        Creates a polynomial regression.
        It uses the default degree, 2.
        Returns:
        polynomial regression instance
      • buildPolynomialRegression

        public PolynomialRegression buildPolynomialRegression​(int degree)
        Creates a polynomial regression.
        Parameters:
        degree - the maximum degree of the polynomial
        Returns:
        polynomial regression instance
      • buildPowerRegression

        public PowerRegression buildPowerRegression()
        Creates a power regression.
        Returns:
        power regression instance
      • buildExponentialRegression

        public ExponentialRegression buildExponentialRegression()
        Creates a exponential regression.
        Returns:
        exponential regression instance
      • buildTheilSenRegression

        public TheilSenRegression buildTheilSenRegression()
        Creates a TheilSen regression.
        Returns:
        TheilSen regression instance
      • buildRobustPolynomialRegression

        public RobustPolynomialRegression buildRobustPolynomialRegression()
        Creates a robust polynomial regression.
        It uses the default degree, 2.
        Returns:
        robust polynomial regression instance
      • buildRobustPolynomialRegression

        public RobustPolynomialRegression buildRobustPolynomialRegression​(int degree)
        Creates a robust polynomial regression.
        Parameters:
        degree - the maximum degree of the robust polynomial
        Returns:
        robust polynomial regression instance
      • setSamples

        public final T setSamples​(List<Double> y)
        Sets samples, using the passed Y values.
        X values are creating starting from 0 with increment of 1.
        Parameters:
        y - Y values to use to create the regression
        Returns:
        regression builder
      • setSamples

        public final T setSamples​(List<Double> y,
                                  double starting)
        Sets samples, using the passed Y values.
        X values are creating starting from passed argument with increment of 1.
        Parameters:
        y - Y values to use to create the regression
        starting - starting value to create X values
        Returns:
        regression builder instance
      • setSamples

        public T setSamples​(List<Double> y,
                            double starting,
                            double increment)
        Sets samples, using the passed Y values.
        X values are creating starting from passed argument with increment of passed argument.
        Parameters:
        y - Y values to use to create the regression
        starting - starting value to create X values
        increment - increment to apply to the starting value
        Returns:
        regression builder instance
      • setSamplesByDates

        public T setSamplesByDates​(List<Date> x,
                                   List<Double> y)
        Creates a simple linear regression, using the passed X and Y values.
        Parameters:
        x - X values to use to create the regression
        y - Y values to use to create the regression
        Returns:
        regression builder instance
      • setSamplesByDataPoints

        public T setSamplesByDataPoints​(List<DataPoint> dataPoints)
        Creates a simple linear regression, using the passed DataPoints.
        Parameters:
        dataPoints - data points to use to create the regression
        Returns:
        regression builder instance
      • setSamplesByTimeSeriesItems

        public T setSamplesByTimeSeriesItems​(List<TimeSeriesItem> items)
        Creates a simple linear regression, using the passed TimeSeriesItems.
        Parameters:
        items - time series items to use to create the regression
        Returns:
        regression builder instance
      • setSamples

        public T setSamples​(List<Double> x,
                            List<Double> y)
        Creates a simple linear regression, using the passed X and Y values.
        Parameters:
        x - X values to use to create the regression
        y - Y values to use to create the regression
        Returns:
        regression builder instance