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    *      https://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  
18  /*
19   * This is not the original file distributed by the Apache Software Foundation
20   * It has been modified by the Hipparchus project
21   */
22  package org.hipparchus.stat.descriptive;
23  
24  import org.hipparchus.linear.RealMatrix;
25  
26  /**
27   * Reporting interface for basic multivariate statistics.
28   */
29  public interface StatisticalMultivariateSummary {
30  
31      /**
32       * Returns the dimension of the data
33       * @return The dimension of the data
34       */
35      int getDimension();
36  
37      /**
38       * Returns an array whose i<sup>th</sup> entry is the
39       * mean of the i<sup>th</sup> entries of the arrays
40       * that correspond to each multivariate sample
41       *
42       * @return the array of component means
43       */
44      double[] getMean();
45  
46      /**
47       * Returns the covariance of the available values.
48       * @return The covariance, null if no multivariate sample
49       * have been added or a zeroed matrix for a single value set.
50       */
51      RealMatrix getCovariance();
52  
53      /**
54       * Returns an array whose i<sup>th</sup> entry is the
55       * standard deviation of the i<sup>th</sup> entries of the arrays
56       * that correspond to each multivariate sample
57       *
58       * @return the array of component standard deviations
59       */
60      double[] getStandardDeviation();
61  
62      /**
63       * Returns an array whose i<sup>th</sup> entry is the
64       * maximum of the i<sup>th</sup> entries of the arrays
65       * that correspond to each multivariate sample
66       *
67       * @return the array of component maxima
68       */
69      double[] getMax();
70  
71      /**
72       * Returns an array whose i<sup>th</sup> entry is the
73       * minimum of the i<sup>th</sup> entries of the arrays
74       * that correspond to each multivariate sample
75       *
76       * @return the array of component minima
77       */
78      double[] getMin();
79  
80      /**
81       * Returns the number of available values
82       * @return The number of available values
83       */
84      long getN();
85  
86      /**
87       * Returns an array whose i<sup>th</sup> entry is the
88       * geometric mean of the i<sup>th</sup> entries of the arrays
89       * that correspond to each multivariate sample
90       *
91       * @return the array of component geometric means
92       */
93      double[] getGeometricMean();
94  
95      /**
96       * Returns an array whose i<sup>th</sup> entry is the
97       * sum of the i<sup>th</sup> entries of the arrays
98       * that correspond to each multivariate sample
99       *
100      * @return the array of component sums
101      */
102     double[] getSum();
103 
104     /**
105      * Returns an array whose i<sup>th</sup> entry is the
106      * sum of squares of the i<sup>th</sup> entries of the arrays
107      * that correspond to each multivariate sample
108      *
109      * @return the array of component sums of squares
110      */
111     double[] getSumSq();
112 
113     /**
114      * Returns an array whose i<sup>th</sup> entry is the
115      * sum of logs of the i<sup>th</sup> entries of the arrays
116      * that correspond to each multivariate sample
117      *
118      * @return the array of component log sums
119      */
120     double[] getSumLog();
121 
122 }