rio - gsdir work...
[jalview.git] / forester / java / src / org / forester / util / BasicDescriptiveStatistics.java
index 699526f..dbb1db9 100644 (file)
@@ -7,7 +7,7 @@
 // Copyright (C) 2008-2009 Christian M. Zmasek
 // Copyright (C) 2008-2009 Burnham Institute for Medical Research
 // All rights reserved
-// 
+//
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
@@ -17,7 +17,7 @@
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 // Lesser General Public License for more details.
-// 
+//
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
@@ -39,14 +39,18 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
     private double       _max;
     private double       _sigma;
     private boolean      _recalc_sigma;
+    private String       _desc;
 
     public BasicDescriptiveStatistics() {
         init();
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#addValue(double)
-     */
+    public BasicDescriptiveStatistics( final String desc ) {
+        init();
+        setDescription( desc );
+    }
+
+    @Override
     public void addValue( final double d ) {
         _recalc_sigma = true;
         _sum += d;
@@ -59,17 +63,13 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         }
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#arithmeticMean()
-     */
+    @Override
     public double arithmeticMean() {
         validate();
         return getSum() / getN();
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#asSummary()
-     */
+    @Override
     public String asSummary() {
         if ( getN() > 1 ) {
             return arithmeticMean() + DescriptiveStatistics.PLUS_MINUS + sampleStandardDeviation() + " [" + getMin()
@@ -80,17 +80,18 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         }
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#coefficientOfVariation()
-     */
+    @Override
     public double coefficientOfVariation() {
         validate();
         return ( sampleStandardDeviation() / arithmeticMean() );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getDataAsDoubleArray()
-     */
+    @Override
+    public List<Double> getData() {
+        return _data;
+    }
+
+    @Override
     public double[] getDataAsDoubleArray() {
         validate();
         final double[] data_array = new double[ getN() ];
@@ -100,67 +101,49 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return data_array;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getMax()
-     */
+    @Override
+    public String getDescription() {
+        return _desc;
+    }
+
+    @Override
     public double getMax() {
         validate();
         return _max;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getMin()
-     */
+    @Override
     public double getMin() {
         validate();
         return _min;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getN()
-     */
+    @Override
     public int getN() {
         return _data.size();
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getSum()
-     */
+    @Override
     public double getSum() {
         validate();
         return _sum;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getSummaryAsString()
-     */
+    @Override
     public String getSummaryAsString() {
         validate();
         final double mean = arithmeticMean();
         final double sd = sampleStandardDeviation();
-        return "" + mean + ( ( char ) 177 ) + sd + " [" + getMin() + "..." + getMax() + "]";
+        return "" + mean + ( ( char ) 177 ) + sd + " [" + getN() + "] [" + getMin() + "-" + getMax() + "]";
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#getValue(int)
-     */
+    @Override
     public double getValue( final int index ) {
         validate();
         return ( ( ( _data.get( index ) ) ).doubleValue() );
     }
 
-    private void init() {
-        _data = new ArrayList<Double>();
-        _sum = 0.0;
-        _min = Double.MAX_VALUE;
-        _max = -Double.MAX_VALUE;
-        _sigma = 0.0;
-        _recalc_sigma = true;
-    }
-
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#median()
-     */
+    @Override
     public double median() {
         validate();
         double median = 0.0;
@@ -182,17 +165,13 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return median;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#midrange()
-     */
+    @Override
     public double midrange() {
         validate();
         return ( _min + _max ) / 2.0;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#pearsonianSkewness()
-     */
+    @Override
     public double pearsonianSkewness() {
         validate();
         final double mean = arithmeticMean();
@@ -201,24 +180,18 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return ( ( 3 * ( mean - median ) ) / sd );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#sampleStandardDeviation()
-     */
+    @Override
     public double sampleStandardDeviation() {
         return Math.sqrt( sampleVariance() );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#sampleStandardUnit(double)
-     */
+    @Override
     public double sampleStandardUnit( final double value ) {
         validate();
         return BasicDescriptiveStatistics.sampleStandardUnit( value, arithmeticMean(), sampleStandardDeviation() );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#sampleVariance()
-     */
+    @Override
     public double sampleVariance() {
         validate();
         if ( getN() < 2 ) {
@@ -227,17 +200,18 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return ( sumDeviations() / ( getN() - 1 ) );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#standardErrorOfMean()
-     */
+    @Override
+    public void setDescription( final String desc ) {
+        _desc = desc;
+    }
+
+    @Override
     public double standardErrorOfMean() {
         validate();
         return ( sampleStandardDeviation() / Math.sqrt( getN() ) );
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#sumDeviations()
-     */
+    @Override
     public double sumDeviations() {
         validate();
         if ( _recalc_sigma ) {
@@ -251,9 +225,6 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return _sigma;
     }
 
-    /* (non-Javadoc)
-     * @see org.forester.util.DescriptiveStatisticsI#toString()
-     */
     @Override
     public String toString() {
         if ( getN() < 1 ) {
@@ -288,6 +259,16 @@ public class BasicDescriptiveStatistics implements DescriptiveStatistics {
         return sb.toString();
     }
 
+    private void init() {
+        _data = new ArrayList<Double>();
+        _sum = 0.0;
+        _min = Double.MAX_VALUE;
+        _max = -Double.MAX_VALUE;
+        _sigma = 0.0;
+        _recalc_sigma = true;
+        _desc = "";
+    }
+
     private void validate() throws ArithmeticException {
         if ( getN() < 1 ) {
             throw new ArithmeticException( "attempt to get a result from empty data set statistics" );