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