TypeScript 陣列的求標準差(standardDeviation)

標準差是一個統計學中常用的指標,它可以衡量一組數據的分散程度。在 TypeScript 中,可以使用 Array.prototype.reduce() 來計算標準差。

標準差的計算公式如下:

// 標準差公式
standardDeviation = sqrt(sum(x - mean)^2 / n)

其中,x 是數組中的每個元素,mean 是數組的平均值,n 是數組中元素的個數。

下面是一個簡單的 TypeScript 函數,可以用來計算標準差:

// 計算標準差
function standardDeviation(arr: number[]) {
  const mean = arr.reduce((a, b) => a + b) / arr.length;
  return Math.sqrt(
    arr.reduce((sq, n) => sq + Math.pow(n - mean, 2), 0) / arr.length
  );
}

該函數的工作原理是:首先使用 Array.prototype.reduce() 計算數組中元素的平均值,然後再使用 Array.prototype.reduce() 計算每個元素與平均值之間的差值的平方和,最後再將該和除以數組中元素的個數,並將結果開根號,即可得到標準差。

例如,對於數組 [1, 2, 3, 4, 5],標準差為 1.5811388300841898

standardDeviation([1, 2, 3, 4, 5]); // 1.5811388300841898

因此,可以使用 TypeScript 中的 Array.prototype.reduce() 來計算標準差。

總結

在本文中,我們學習了如何使用 TypeScript 中的 Array.prototype.reduce() 來計算標準差。該函數的工作原理是:首先使用 Array.prototype.reduce() 計算數組中元素的平均值,然後再使用 Array.prototype.reduce() 計算每個元素與平均值之間的差值的平方和,最後再將該和除以數組中元素的個數,並將結果開根號,即可得到標準差。

Categorized in:

Tagged in: