Class Sum

    • Constructor Detail

      • Sum

        public Sum()
        Create a Sum instance.
      • Sum

        public Sum​(Sum original)
            throws NullArgumentException
        Copy constructor, creates a new Sum identical to the original.
        Parameters:
        original - the Sum instance to copy
        Throws:
        NullArgumentException - if original is null
    • Method Detail

      • getN

        public long getN()
        Returns the number of values that have been added.
        Specified by:
        getN in interface StorelessUnivariateStatistic
        Returns:
        the number of values.
      • aggregate

        public void aggregate​(Sum other)
        Aggregates the provided instance into this instance.

        This method can be used to combine statistics computed over partitions or subsamples - i.e., the value of this instance after this operation should be the same as if a single statistic would have been applied over the combined dataset.

        Specified by:
        aggregate in interface AggregatableStatistic<Sum>
        Parameters:
        other - the instance to aggregate into this instance
      • evaluate

        public double evaluate​(double[] values,
                               double[] weights,
                               int begin,
                               int length)
                        throws MathIllegalArgumentException
        The weighted sum of the entries in the specified portion of the input array, or 0 if the designated subarray is empty.

        Throws MathIllegalArgumentException if any of the following are true:

        • the values array is null
        • the weights array is null
        • the weights array does not have the same length as the values array
        • the weights array contains one or more infinite values
        • the weights array contains one or more NaN values
        • the weights array contains negative values
        • the start and length arguments do not determine a valid array

        Uses the formula,

            weighted sum = Σ(values[i] * weights[i])
         

        Specified by:
        evaluate in interface WeightedEvaluation
        Parameters:
        values - the input array
        weights - the weights array
        begin - index of the first array element to include
        length - the number of elements to include
        Returns:
        the sum of the values or 0 if length = 0
        Throws:
        MathIllegalArgumentException - if the parameters are not valid