1 | "use strict";
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | exports.getMean = exports.getMedian = void 0;
|
4 | var tslib_1 = require("tslib");
|
5 | var util_1 = require("@antv/util");
|
6 |
|
7 |
|
8 |
|
9 |
|
10 | function getMedian(array) {
|
11 | var arr = tslib_1.__spreadArrays(array);
|
12 |
|
13 | arr.sort(function (a, b) {
|
14 | return a - b;
|
15 | });
|
16 | var len = arr.length;
|
17 |
|
18 |
|
19 | if (len === 0) {
|
20 | return 0;
|
21 | }
|
22 |
|
23 | if (len % 2 === 1) {
|
24 | return arr[(len - 1) / 2];
|
25 | }
|
26 |
|
27 | return (arr[len / 2] + arr[len / 2 - 1]) / 2;
|
28 | }
|
29 | exports.getMedian = getMedian;
|
30 |
|
31 |
|
32 |
|
33 |
|
34 | function getMean(array) {
|
35 | var sum = util_1.reduce(array, function (r, num) {
|
36 | return r += (isNaN(num) || !util_1.isNumber(num) ? 0 : num);
|
37 | }, 0);
|
38 | return array.length === 0 ? 0 : sum / array.length;
|
39 | }
|
40 | exports.getMean = getMean;
|
41 |
|
\ | No newline at end of file |