Home | History | Annotate | Download | only in descriptive
      1 /*
      2  * Licensed to the Apache Software Foundation (ASF) under one or more
      3  * contributor license agreements.  See the NOTICE file distributed with
      4  * this work for additional information regarding copyright ownership.
      5  * The ASF licenses this file to You under the Apache License, Version 2.0
      6  * (the "License"); you may not use this file except in compliance with
      7  * the License.  You may obtain a copy of the License at
      8  *
      9  *      http://www.apache.org/licenses/LICENSE-2.0
     10  *
     11  * Unless required by applicable law or agreed to in writing, software
     12  * distributed under the License is distributed on an "AS IS" BASIS,
     13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     14  * See the License for the specific language governing permissions and
     15  * limitations under the License.
     16  */
     17 package org.apache.commons.math.stat.descriptive;
     18 
     19 import org.apache.commons.math.linear.RealMatrix;
     20 
     21 /**
     22  *  Reporting interface for basic multivariate statistics.
     23  *
     24  * @since 1.2
     25  * @version $Revision: 811786 $ $Date: 2009-09-06 11:36:08 +0200 (dim. 06 sept. 2009) $
     26  */
     27 public interface StatisticalMultivariateSummary {
     28 
     29     /**
     30      * Returns the dimension of the data
     31      * @return The dimension of the data
     32      */
     33     int getDimension();
     34 
     35     /**
     36      * Returns an array whose i<sup>th</sup> entry is the
     37      * mean of the i<sup>th</sup> entries of the arrays
     38      * that correspond to each multivariate sample
     39      *
     40      * @return the array of component means
     41      */
     42     double[] getMean();
     43 
     44     /**
     45      * Returns the covariance of the available values.
     46      * @return The covariance, null if no multivariate sample
     47      * have been added or a zeroed matrix for a single value set.
     48      */
     49     RealMatrix getCovariance();
     50 
     51     /**
     52      * Returns an array whose i<sup>th</sup> entry is the
     53      * standard deviation of the i<sup>th</sup> entries of the arrays
     54      * that correspond to each multivariate sample
     55      *
     56      * @return the array of component standard deviations
     57      */
     58     double[] getStandardDeviation();
     59 
     60     /**
     61      * Returns an array whose i<sup>th</sup> entry is the
     62      * maximum of the i<sup>th</sup> entries of the arrays
     63      * that correspond to each multivariate sample
     64      *
     65      * @return the array of component maxima
     66      */
     67     double[] getMax();
     68 
     69     /**
     70      * Returns an array whose i<sup>th</sup> entry is the
     71      * minimum of the i<sup>th</sup> entries of the arrays
     72      * that correspond to each multivariate sample
     73      *
     74      * @return the array of component minima
     75      */
     76     double[] getMin();
     77 
     78     /**
     79      * Returns the number of available values
     80      * @return The number of available values
     81      */
     82     long getN();
     83 
     84     /**
     85      * Returns an array whose i<sup>th</sup> entry is the
     86      * geometric mean of the i<sup>th</sup> entries of the arrays
     87      * that correspond to each multivariate sample
     88      *
     89      * @return the array of component geometric means
     90      */
     91     double[] getGeometricMean();
     92 
     93     /**
     94      * Returns an array whose i<sup>th</sup> entry is the
     95      * sum of the i<sup>th</sup> entries of the arrays
     96      * that correspond to each multivariate sample
     97      *
     98      * @return the array of component sums
     99      */
    100     double[] getSum();
    101 
    102     /**
    103      * Returns an array whose i<sup>th</sup> entry is the
    104      * sum of squares of the i<sup>th</sup> entries of the arrays
    105      * that correspond to each multivariate sample
    106      *
    107      * @return the array of component sums of squares
    108      */
    109     double[] getSumSq();
    110 
    111     /**
    112      * Returns an array whose i<sup>th</sup> entry is the
    113      * sum of logs of the i<sup>th</sup> entries of the arrays
    114      * that correspond to each multivariate sample
    115      *
    116      * @return the array of component log sums
    117      */
    118     double[] getSumLog();
    119 
    120 }
    121