ILIAS  release_5-4 Revision v5.4.26-12-gabc799a52e6
Statistical.php
Go to the documentation of this file.
1<?php
2
4
15
20{
21 const LOG_GAMMA_X_MAX_VALUE = 2.55e305;
22 const EPS = 2.22e-16;
23 const MAX_VALUE = 1.2e308;
24 const SQRT2PI = 2.5066282746310005024157652848110452530069867406099;
25
44 public static function AVEDEV(...$args)
45 {
46 return Averages::averageDeviations(...$args);
47 }
48
66 public static function AVERAGE(...$args)
67 {
68 return Averages::average(...$args);
69 }
70
88 public static function AVERAGEA(...$args)
89 {
90 return Averages::averageA(...$args);
91 }
92
112 public static function AVERAGEIF($range, $condition, $averageRange = [])
113 {
114 return Conditional::AVERAGEIF($range, $condition, $averageRange);
115 }
116
135 public static function BETADIST($value, $alpha, $beta, $rMin = 0, $rMax = 1)
136 {
137 return Statistical\Distributions\Beta::distribution($value, $alpha, $beta, $rMin, $rMax);
138 }
139
158 public static function BETAINV($probability, $alpha, $beta, $rMin = 0, $rMax = 1)
159 {
160 return Statistical\Distributions\Beta::inverse($probability, $alpha, $beta, $rMin, $rMax);
161 }
162
184 public static function BINOMDIST($value, $trials, $probability, $cumulative)
185 {
186 return Statistical\Distributions\Binomial::distribution($value, $trials, $probability, $cumulative);
187 }
188
204 public static function CHIDIST($value, $degrees)
205 {
207 }
208
224 public static function CHIINV($probability, $degrees)
225 {
226 return Statistical\Distributions\ChiSquared::inverseRightTail($probability, $degrees);
227 }
228
245 public static function CONFIDENCE($alpha, $stdDev, $size)
246 {
247 return Confidence::CONFIDENCE($alpha, $stdDev, $size);
248 }
249
265 public static function CORREL($yValues, $xValues = null)
266 {
267 return Trends::CORREL($xValues, $yValues);
268 }
269
287 public static function COUNT(...$args)
288 {
289 return Counts::COUNT(...$args);
290 }
291
309 public static function COUNTA(...$args)
310 {
311 return Counts::COUNTA(...$args);
312 }
313
331 public static function COUNTBLANK(...$args)
332 {
333 return Counts::COUNTBLANK(...$args);
334 }
335
354 public static function COUNTIF($range, $condition)
355 {
356 return Conditional::COUNTIF($range, $condition);
357 }
358
376 public static function COUNTIFS(...$args)
377 {
378 return Conditional::COUNTIFS(...$args);
379 }
380
396 public static function COVAR($yValues, $xValues)
397 {
398 return Trends::COVAR($yValues, $xValues);
399 }
400
420 public static function CRITBINOM($trials, $probability, $alpha)
421 {
422 return Statistical\Distributions\Binomial::inverse($trials, $probability, $alpha);
423 }
424
442 public static function DEVSQ(...$args)
443 {
444 return Statistical\Deviations::sumSquares(...$args);
445 }
446
465 public static function EXPONDIST($value, $lambda, $cumulative)
466 {
467 return Statistical\Distributions\Exponential::distribution($value, $lambda, $cumulative);
468 }
469
491 public static function FDIST2($value, $u, $v, $cumulative)
492 {
493 return Statistical\Distributions\F::distribution($value, $u, $v, $cumulative);
494 }
495
512 public static function FISHER($value)
513 {
515 }
516
533 public static function FISHERINV($value)
534 {
536 }
537
554 public static function FORECAST($xValue, $yValues, $xValues)
555 {
556 return Trends::FORECAST($xValue, $yValues, $xValues);
557 }
558
573 public static function GAMMAFunction($value)
574 {
576 }
577
595 public static function GAMMADIST($value, $a, $b, $cumulative)
596 {
597 return Statistical\Distributions\Gamma::distribution($value, $a, $b, $cumulative);
598 }
599
616 public static function GAMMAINV($probability, $alpha, $beta)
617 {
618 return Statistical\Distributions\Gamma::inverse($probability, $alpha, $beta);
619 }
620
635 public static function GAMMALN($value)
636 {
638 }
639
655 public static function GAUSS($value)
656 {
658 }
659
679 public static function GEOMEAN(...$args)
680 {
682 }
683
701 public static function GROWTH($yValues, $xValues = [], $newValues = [], $const = true)
702 {
703 return Trends::GROWTH($yValues, $xValues, $newValues, $const);
704 }
705
724 public static function HARMEAN(...$args)
725 {
727 }
728
747 public static function HYPGEOMDIST($sampleSuccesses, $sampleNumber, $populationSuccesses, $populationNumber)
748 {
750 $sampleSuccesses,
751 $sampleNumber,
752 $populationSuccesses,
753 $populationNumber
754 );
755 }
756
772 public static function INTERCEPT($yValues, $xValues)
773 {
774 return Trends::INTERCEPT($yValues, $xValues);
775 }
776
794 public static function KURT(...$args)
795 {
796 return Statistical\Deviations::kurtosis(...$args);
797 }
798
817 public static function LARGE(...$args)
818 {
819 return Statistical\Size::large(...$args);
820 }
821
840 public static function LINEST($yValues, $xValues = null, $const = true, $stats = false)
841 {
842 return Trends::LINEST($yValues, $xValues, $const, $stats);
843 }
844
863 public static function LOGEST($yValues, $xValues = null, $const = true, $stats = false)
864 {
865 return Trends::LOGEST($yValues, $xValues, $const, $stats);
866 }
867
888 public static function LOGINV($probability, $mean, $stdDev)
889 {
890 return Statistical\Distributions\LogNormal::inverse($probability, $mean, $stdDev);
891 }
892
910 public static function LOGNORMDIST($value, $mean, $stdDev)
911 {
912 return Statistical\Distributions\LogNormal::cumulative($value, $mean, $stdDev);
913 }
914
933 public static function LOGNORMDIST2($value, $mean, $stdDev, $cumulative = false)
934 {
935 return Statistical\Distributions\LogNormal::distribution($value, $mean, $stdDev, $cumulative);
936 }
937
956 public static function MAX(...$args)
957 {
958 return Maximum::max(...$args);
959 }
960
978 public static function MAXA(...$args)
979 {
980 return Maximum::maxA(...$args);
981 }
982
1000 public static function MAXIFS(...$args)
1001 {
1002 return Conditional::MAXIFS(...$args);
1003 }
1004
1022 public static function MEDIAN(...$args)
1023 {
1024 return Statistical\Averages::median(...$args);
1025 }
1026
1045 public static function MIN(...$args)
1046 {
1047 return Minimum::min(...$args);
1048 }
1049
1067 public static function MINA(...$args)
1068 {
1069 return Minimum::minA(...$args);
1070 }
1071
1089 public static function MINIFS(...$args)
1090 {
1091 return Conditional::MINIFS(...$args);
1092 }
1093
1111 public static function MODE(...$args)
1112 {
1113 return Statistical\Averages::mode(...$args);
1114 }
1115
1136 public static function NEGBINOMDIST($failures, $successes, $probability)
1137 {
1138 return Statistical\Distributions\Binomial::negative($failures, $successes, $probability);
1139 }
1140
1160 public static function NORMDIST($value, $mean, $stdDev, $cumulative)
1161 {
1162 return Statistical\Distributions\Normal::distribution($value, $mean, $stdDev, $cumulative);
1163 }
1164
1181 public static function NORMINV($probability, $mean, $stdDev)
1182 {
1183 return Statistical\Distributions\Normal::inverse($probability, $mean, $stdDev);
1184 }
1185
1202 public static function NORMSDIST($value)
1203 {
1205 }
1206
1224 public static function NORMSDIST2($value, $cumulative)
1225 {
1227 }
1228
1243 public static function NORMSINV($value)
1244 {
1246 }
1247
1265 public static function PERCENTILE(...$args)
1266 {
1267 return Statistical\Percentiles::PERCENTILE(...$args);
1268 }
1269
1289 public static function PERCENTRANK($valueSet, $value, $significance = 3)
1290 {
1291 return Statistical\Percentiles::PERCENTRANK($valueSet, $value, $significance);
1292 }
1293
1313 public static function PERMUT($numObjs, $numInSet)
1314 {
1315 return Permutations::PERMUT($numObjs, $numInSet);
1316 }
1317
1336 public static function POISSON($value, $mean, $cumulative)
1337 {
1338 return Statistical\Distributions\Poisson::distribution($value, $mean, $cumulative);
1339 }
1340
1358 public static function QUARTILE(...$args)
1359 {
1360 return Statistical\Percentiles::QUARTILE(...$args);
1361 }
1362
1379 public static function RANK($value, $valueSet, $order = 0)
1380 {
1381 return Statistical\Percentiles::RANK($value, $valueSet, $order);
1382 }
1383
1399 public static function RSQ($yValues, $xValues)
1400 {
1401 return Trends::RSQ($yValues, $xValues);
1402 }
1403
1421 public static function SKEW(...$args)
1422 {
1423 return Statistical\Deviations::skew(...$args);
1424 }
1425
1441 public static function SLOPE($yValues, $xValues)
1442 {
1443 return Trends::SLOPE($yValues, $xValues);
1444 }
1445
1464 public static function SMALL(...$args)
1465 {
1466 return Statistical\Size::small(...$args);
1467 }
1468
1485 public static function STANDARDIZE($value, $mean, $stdDev)
1486 {
1487 return Statistical\Standardize::execute($value, $mean, $stdDev);
1488 }
1489
1508 public static function STDEV(...$args)
1509 {
1510 return StandardDeviations::STDEV(...$args);
1511 }
1512
1530 public static function STDEVA(...$args)
1531 {
1532 return StandardDeviations::STDEVA(...$args);
1533 }
1534
1552 public static function STDEVP(...$args)
1553 {
1554 return StandardDeviations::STDEVP(...$args);
1555 }
1556
1574 public static function STDEVPA(...$args)
1575 {
1576 return StandardDeviations::STDEVPA(...$args);
1577 }
1578
1594 public static function STEYX($yValues, $xValues)
1595 {
1596 return Trends::STEYX($yValues, $xValues);
1597 }
1598
1615 public static function TDIST($value, $degrees, $tails)
1616 {
1617 return Statistical\Distributions\StudentT::distribution($value, $degrees, $tails);
1618 }
1619
1635 public static function TINV($probability, $degrees)
1636 {
1637 return Statistical\Distributions\StudentT::inverse($probability, $degrees);
1638 }
1639
1657 public static function TREND($yValues, $xValues = [], $newValues = [], $const = true)
1658 {
1659 return Trends::TREND($yValues, $xValues, $newValues, $const);
1660 }
1661
1681 public static function TRIMMEAN(...$args)
1682 {
1683 return Statistical\Averages\Mean::trim(...$args);
1684 }
1685
1703 public static function VARFunc(...$args)
1704 {
1705 return Variances::VAR(...$args);
1706 }
1707
1725 public static function VARA(...$args)
1726 {
1727 return Variances::VARA(...$args);
1728 }
1729
1747 public static function VARP(...$args)
1748 {
1749 return Variances::VARP(...$args);
1750 }
1751
1769 public static function VARPA(...$args)
1770 {
1771 return Variances::VARPA(...$args);
1772 }
1773
1792 public static function WEIBULL($value, $alpha, $beta, $cumulative)
1793 {
1794 return Statistical\Distributions\Weibull::distribution($value, $alpha, $beta, $cumulative);
1795 }
1796
1816 public static function ZTEST($dataSet, $m0, $sigma = null)
1817 {
1818 return Statistical\Distributions\StandardNormal::zTest($dataSet, $m0, $sigma);
1819 }
1820}
$size
Definition: RandomTest.php:84
An exception for terminatinating execution or to throw for unit testing.
static AVERAGEIF($range, $condition, $averageRange=[])
AVERAGEIF.
Definition: Conditional.php:32
static CONFIDENCE($alpha, $stdDev, $size)
CONFIDENCE.
Definition: Confidence.php:21
static distribution($value, $alpha, $beta, $rMin=0.0, $rMax=1.0)
BETADIST.
Definition: Beta.php:29
static inverse($probability, $alpha, $beta, $rMin=0.0, $rMax=1.0)
BETAINV.
Definition: Beta.php:75
static negative($failures, $successes, $probability)
NEGBINOMDIST.
Definition: Binomial.php:118
static distribution($value, $trials, $probability, $cumulative)
BINOMDIST.
Definition: Binomial.php:27
static inverse($trials, $probability, $alpha)
CRITBINOM.
Definition: Binomial.php:157
static distribution($value, $lambda, $cumulative)
EXPONDIST.
Definition: Exponential.php:23
static distribution($value, $u, $v, $cumulative)
F.DIST.
Definition: F.php:25
static distribution($value, $a, $b, $cumulative)
GAMMADIST.
Definition: Gamma.php:48
static inverse($probability, $alpha, $beta)
GAMMAINV.
Definition: Gamma.php:81
static distribution($sampleSuccesses, $sampleNumber, $populationSuccesses, $populationNumber)
HYPGEOMDIST.
static distribution($value, $mean, $stdDev, $cumulative=false)
LOGNORM.DIST.
Definition: LogNormal.php:56
static distribution($value, $mean, $stdDev, $cumulative)
NORMDIST.
Definition: Normal.php:27
static inverse($probability, $mean, $stdDev)
NORMINV.
Definition: Normal.php:64
static distribution($value, $mean, $cumulative)
POISSON.
Definition: Poisson.php:24
static distribution($value, $alpha, $beta, $cumulative)
WEIBULL.
Definition: Weibull.php:23
static PERCENTRANK($valueSet, $value, $significance=3)
PERCENTRANK.
Definition: Percentiles.php:76
static RANK($value, $valueSet, $order=self::RANK_SORT_DESCENDING)
RANK.
static execute($value, $mean, $stdDev)
STANDARDIZE.
Definition: Standardize.php:21
static SLOPE($yValues, $xValues)
SLOPE.
Definition: Trends.php:352
static LINEST($yValues, $xValues=null, $const=true, $stats=false)
LINEST.
Definition: Trends.php:202
static COVAR($yValues, $xValues)
COVAR.
Definition: Trends.php:90
static CORREL($yValues, $xValues=null)
CORREL.
Definition: Trends.php:62
static INTERCEPT($yValues, $xValues)
INTERCEPT.
Definition: Trends.php:175
static FORECAST($xValue, $yValues, $xValues)
FORECAST.
Definition: Trends.php:116
static TREND($yValues, $xValues=[], $newValues=[], $const=true)
TREND.
Definition: Trends.php:402
static LOGEST($yValues, $xValues=null, $const=true, $stats=false)
LOGEST.
Definition: Trends.php:263
static GROWTH($yValues, $xValues=[], $newValues=[], $const=true)
GROWTH.
Definition: Trends.php:145
static STEYX($yValues, $xValues)
STEYX.
Definition: Trends.php:376
static NORMDIST($value, $mean, $stdDev, $cumulative)
NORMDIST.
static TREND($yValues, $xValues=[], $newValues=[], $const=true)
TREND.
static TDIST($value, $degrees, $tails)
TDIST.
static CORREL($yValues, $xValues=null)
CORREL.
static GAMMAINV($probability, $alpha, $beta)
GAMMAINV.
static GROWTH($yValues, $xValues=[], $newValues=[], $const=true)
GROWTH.
static LOGNORMDIST2($value, $mean, $stdDev, $cumulative=false)
LOGNORM.DIST.
static INTERCEPT($yValues, $xValues)
INTERCEPT.
static TINV($probability, $degrees)
TINV.
static FDIST2($value, $u, $v, $cumulative)
F.DIST.
static BETADIST($value, $alpha, $beta, $rMin=0, $rMax=1)
BETADIST.
static NEGBINOMDIST($failures, $successes, $probability)
NEGBINOMDIST.
static RANK($value, $valueSet, $order=0)
RANK.
static BETAINV($probability, $alpha, $beta, $rMin=0, $rMax=1)
BETAINV.
static COVAR($yValues, $xValues)
COVAR.
static LOGNORMDIST($value, $mean, $stdDev)
LOGNORMDIST.
static NORMSDIST2($value, $cumulative)
NORM.S.DIST.
static STEYX($yValues, $xValues)
STEYX.
static COUNTIF($range, $condition)
COUNTIF.
static CHIDIST($value, $degrees)
CHIDIST.
static LINEST($yValues, $xValues=null, $const=true, $stats=false)
LINEST.
static HYPGEOMDIST($sampleSuccesses, $sampleNumber, $populationSuccesses, $populationNumber)
HYPGEOMDIST.
static EXPONDIST($value, $lambda, $cumulative)
EXPONDIST.
static GAMMADIST($value, $a, $b, $cumulative)
GAMMADIST.
static SLOPE($yValues, $xValues)
SLOPE.
static PERMUT($numObjs, $numInSet)
PERMUT.
static LOGEST($yValues, $xValues=null, $const=true, $stats=false)
LOGEST.
static BINOMDIST($value, $trials, $probability, $cumulative)
BINOMDIST.
static CONFIDENCE($alpha, $stdDev, $size)
CONFIDENCE.
static STANDARDIZE($value, $mean, $stdDev)
STANDARDIZE.
static AVERAGEIF($range, $condition, $averageRange=[])
AVERAGEIF.
static FORECAST($xValue, $yValues, $xValues)
FORECAST.
static POISSON($value, $mean, $cumulative)
POISSON.
static LOGINV($probability, $mean, $stdDev)
LOGINV.
static CHIINV($probability, $degrees)
CHIINV.
static ZTEST($dataSet, $m0, $sigma=null)
ZTEST.
static WEIBULL($value, $alpha, $beta, $cumulative)
WEIBULL.
static CRITBINOM($trials, $probability, $alpha)
CRITBINOM.
static PERCENTRANK($valueSet, $value, $significance=3)
PERCENTRANK.
static NORMINV($probability, $mean, $stdDev)
NORMINV.