View Javadoc

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: 670469 $ $Date: 2008-06-23 04:01:38 -0400 (Mon, 23 Jun 2008) $
26   */
27  public interface StatisticalMultivariateSummary {
28      /** 
29       * Returns the dimension of the data
30       * @return The dimension of the data
31       */
32      public int getDimension();
33      /**
34       * Returns an array whose i<sup>th</sup> entry is the
35       * mean of the i<sup>th</sup> entries of the arrays
36       * that correspond to each multivariate sample
37       * 
38       * @return the array of component means
39       */
40      public abstract double[] getMean();
41      /** 
42       * Returns the covariance of the available values.
43       * @return The covariance, null if no multivariate sample
44       * have been added or a zeroed matrix for a single value set.  
45       */
46      public abstract RealMatrix getCovariance();
47      /**
48       * Returns an array whose i<sup>th</sup> entry is the
49       * standard deviation of the i<sup>th</sup> entries of the arrays
50       * that correspond to each multivariate sample
51       * 
52       * @return the array of component standard deviations
53       */
54      public abstract double[] getStandardDeviation();
55      /**
56       * Returns an array whose i<sup>th</sup> entry is the
57       * maximum of the i<sup>th</sup> entries of the arrays
58       * that correspond to each multivariate sample
59       * 
60       * @return the array of component maxima
61       */
62      public abstract double[] getMax();
63      /**
64       * Returns an array whose i<sup>th</sup> entry is the
65       * minimum of the i<sup>th</sup> entries of the arrays
66       * that correspond to each multivariate sample
67       * 
68       * @return the array of component minima
69       */
70      public abstract double[] getMin();
71      /** 
72       * Returns the number of available values
73       * @return The number of available values
74       */
75      public abstract long getN();
76      /**
77       * Returns an array whose i<sup>th</sup> entry is the
78       * geometric mean of the i<sup>th</sup> entries of the arrays
79       * that correspond to each multivariate sample
80       * 
81       * @return the array of component geometric means
82       */
83      public double[] getGeometricMean();
84      /**
85       * Returns an array whose i<sup>th</sup> entry is the
86       * sum of the i<sup>th</sup> entries of the arrays
87       * that correspond to each multivariate sample
88       * 
89       * @return the array of component sums
90       */
91      public abstract double[] getSum();
92      /**
93       * Returns an array whose i<sup>th</sup> entry is the
94       * sum of squares of the i<sup>th</sup> entries of the arrays
95       * that correspond to each multivariate sample
96       * 
97       * @return the array of component sums of squares
98       */
99      public abstract double[] getSumSq();
100     /**
101      * Returns an array whose i<sup>th</sup> entry is the
102      * sum of logs of the i<sup>th</sup> entries of the arrays
103      * that correspond to each multivariate sample
104      * 
105      * @return the array of component log sums
106      */
107     public abstract double[] getSumLog();
108 }