[JavaScript] 中央値 median 計算サンプルコードと Math.js 利用例

Tadashi Shigeoka ·  Thu, October 17, 2019

JavaScript (ES5/ES6) で中央値 median を計算するサンプルコードと、数値計算ライブラリ Math.js の利用例をそれぞれご紹介します。

JavaScript

背景 JavaScript で中央値 median を計算したい

  • JavaScript で中央値 median を計算したい
  • 車輪の再発明はしたくないので、基本的に Math.js の math.median を使う方針
  • ライブラリを使えないとき用に median 関数も自作した

Math.js で中央値 median を計算する

Install Math.js

npm install mathjs

Install math.js

math.median 利用例

math.median(5, 2, 7)        // returns 5

math.median([3, -1, 5, 7])  // returns 4

中央値 median を計算する JavaScript サンプルコード

median for ES5

var median = function (array) {
  if (array.length === 0) {
    return 0;
  }

  array.sort(function(a, b){
    return a - b;
  });

  var half = Math.floor(array.length / 2);

  if (array.length % 2) {
    return array[half];
  } else {
    return (array[half - 1] + array[half]) / 2;
  }
};

median for ES6 (ES2015)

const median = (array) => {
  if (array.length === 0) {
    return 0;
  }

  array.sort((a, b) => {
    return a - b;
  });

  const half = Math.floor(array.length / 2);

  if (array.length % 2) {
    return array[half];
  } else {
    return (array[half - 1] + array[half]) / 2;
  }
};

以上、JavaScript で中央値 (median) を計算したい、現場からお送りしました。

参考情報