使用 TypeScript 輕鬆求取數組的線性回歸係數
線性回歸是一種強大的數據分析技術,用於探索和預測變量之間的關係。在本文中,我們將學習如何使用 TypeScript 來求取數組的線性回歸係數,包括斜率和截距的計算過程。
線性回歸簡介
線性回歸是一種統計分析方法,旨在建立一個變量(因變量)與另一個變量(自變量)之間的關係模型。它的基本形式是一個線性方程:
y = mx + b
在這裡:
– y 是我們要預測的變量。
– x 是自變量。
– m 是斜率,表示 x 的變化對 y 的影響程度。
– b 是截距,表示當 x 為零時 y 的預測值。
要計算線性回歸係數,我們需要求取斜率 m 和截距 b,這涉及到計算平均值和共變異數。
在 TypeScript 中實現線性回歸
在 TypeScript 中,我們可以利用 `Array.prototype.reduce()` 方法來幫助我們計算所需的統計數據。以下是實現的步驟:
1. 計算數組的平均值。
2. 計算 x 和 y 的共變異數。
3. 計算 x 的方差。
4. 使用公式計算斜率 m 和截距 b。
以下是完整的 TypeScript 代碼範例:
function linearRegressionCoefficients(x: number[], y: number[]): [number, number] { const n = x.length; const xMean = x.reduce((acc, curr) => acc + curr, 0) / n; const yMean = y.reduce((acc, curr) => acc + curr, 0) / n; const xyCovariance = x.reduce((acc, curr, i) => acc + (curr - xMean) * (y[i] - yMean), 0); const xVariance = x.reduce((acc, curr) => acc + (curr - xMean) ** 2, 0); const m = xyCovariance / xVariance; const b = yMean - m * xMean; return [m, b]; }
這段代碼首先計算 x 和 y 的平均值,然後計算它們的共變異數和 x 的方差,最後根據公式計算出斜率和截距並返回。
結論
使用 TypeScript 來求取數組的線性回歸係數是一項實用的技術,能幫助我們深入理解數據間的關係並預測未來趨勢。無論你是數據分析師還是開發者,掌握這項技能都將對你有所幫助。開始實作並分析你的數據吧!
—