JStat

2024-07-02 10:00:18 504
JStat 是一个功能强大的 JavaScript 统计库,专为执行统计和数值计算而设计。它提供了广泛的统计函数和方法,使得开发者能够在浏览器和 Node.js 环境中轻松进行各种统计分析和数据处理。JStat 是一个无依赖的库,适用于各种数据分析和科学计算场景。

特点

  • 广泛的统计功能:提供了丰富的统计函数,包括描述性统计、概率分布、矩阵运算、回归分析等。
  • 高性能:针对常见的统计和数值计算进行了优化,性能优异。
  • 无依赖:无需依赖其他库,便于集成和使用。
  • 灵活性强:支持链式调用和函数式编程风格,灵活且易于使用。
  • 跨平台:适用于浏览器和 Node.js 环境。

使用场景

  • 数据分析和可视化
  • 实验和研究中的数据处理
  • 前端和后端统计计算
  • 机器学习中的数据预处理
  • 科学和工程计算

安装方式

可以通过 npm 或者直接引用脚本文件的方式来安装 JStat:

使用 npm 安装

npm install jstat

使用 script 标签引入

<script src="https://cdnjs.cloudflare.com/ajax/libs/jstat/1.9.4/jstat.min.js"></script>

使用示例

基础统计计算

const jStat = require('jstat');

// 计算平均值
const mean = jStat.mean([1, 2, 3, 4, 5]); // 3

// 计算中位数
const median = jStat.median([1, 2, 3, 4, 5]); // 3

// 计算方差
const variance = jStat.variance([1, 2, 3, 4, 5]); // 2.5

回归分析

const dataX = [1, 2, 3, 4, 5];
const dataY = [2, 4, 5, 4, 5];

// 线性回归
const regression = jStat.models.ols(dataY, dataX);
console.log(regression.coef); // 输出回归系数

概率分布

// 计算正态分布的累积分布函数
const cdf = jStat.normal.cdf(1.96, 0, 1); // 0.975

// 生成正态分布的随机数
const randomValues = jStat.normal.sample(0, 1, 10);
console.log(randomValues); // 输出 10 个正态分布随机数

常用 API 介绍

  • jStat.mean(arr):计算数组的平均值。
  • jStat.median(arr):计算数组的中位数。
  • jStat.variance(arr):计算数组的方差。
  • jStat.stdev(arr):计算数组的标准差。
  • jStat.sum(arr):计算数组的总和。
  • jStat.quantiles(arr, quantiles):计算数组的指定分位数。
  • jStat.correlation(arr1, arr2):计算两个数组之间的相关系数。
  • jStat.linearRegression(arr1, arr2):计算线性回归模型。
  • jStat.normal.cdf(x, mean, stddev):计算正态分布的累积分布函数值。
  • jStat.normal.sample(mean, stddev, n):生成正态分布的随机数。

官方资料