在 JavaScript 中计算标准差

Beginner

This tutorial is from open-source community. Access the source code

简介

在本实验中,我们将探讨统计学中标准差的概念及其在 JavaScript 中的实现。我们将学习如何使用 Array.prototype.reduce() 方法计算一组数字的标准差,并理解样本标准差和总体标准差之间的差异。在本实验结束时,你将对统计分析以及如何在 JavaScript 编程中应用它有更深入的理解。

标准差

要在 JavaScript 中计算一组数字的标准差,请执行以下步骤:

  1. 打开终端/SSH 并输入 node 开始练习编码。
  2. 使用下面提供的函数 standardDeviation(arr, usePopulation = false)
  3. 将一组数字作为第一个参数传递给该函数。
  4. 省略第二个参数 usePopulation 以获得样本标准差。将其设置为 true 以获得总体标准差。
const standardDeviation = (arr, usePopulation = false) => {
  const mean = arr.reduce((acc, val) => acc + val, 0) / arr.length;
  return Math.sqrt(
    arr
      .reduce((acc, val) => acc.concat((val - mean) ** 2), [])
      .reduce((acc, val) => acc + val, 0) /
      (arr.length - (usePopulation ? 0 : 1))
  );
};

示例用法:

standardDeviation([10, 2, 38, 23, 38, 23, 21]); // 13.284434142114991(样本)
standardDeviation([10, 2, 38, 23, 38, 23, 21], true); // 12.29899614287479(总体)

总结

恭喜你!你已完成标准差实验。你可以在 LabEx 中练习更多实验以提升你的技能。