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() 計算每個元素與平均值之間的差值的平方和,最後再將該和除以數組中元素的個數,並將結果開根號,即可得到標準差。