透過 MCP 連接 →

輸入計算

Enter one (x, y) pair per line, separated by a comma or space. x must be > 0.

數學公式

數學公式: 對數迴歸計算機

廣告

結果

擬合對數趨勢線
y = 2.127318 + 2.478001 · ln(x)
based on 5 data points
截距 A 2.1273178629
係數 B 2.4780012839
相關係數 r 0.9959866744
ln(x) 的平均 0.9574983486
平均 x(幾何平均) 2.6051710847
y 的平均 4.5

什麼是對數迴歸?

對數迴歸會把資料擬合成 \(y = A + B\cdot\ln(x)\) 形式的曲線。當某個量一開始快速成長、之後逐漸趨於平緩時,這種模型特別好用——也就是說,x 每增加相同的「倍數」,y 大約就會增加相同的「數值」。只要對每個 x 取自然對數,問題就會在轉換後的變數 \(u = \ln(x)\) 上化簡為一條普通的最小平方直線擬合。

帶有先升後平的對數最佳擬合曲線的散佈圖
對數迴歸擬合曲線 \(y = A + B\cdot\ln(x)\),先陡升後趨於平緩。

如何使用這個計算機

請在表格區輸入資料,每一列填入一組 (x, y),中間以逗號或空格分隔。由於 \(\ln(x)\) 在 0 或負數時沒有定義,因此每個 x 值都必須為正數;不符合的列與空白列都會被自動略過。接著選擇要顯示的有效位數,就能讀出擬合後的截距 A、係數 B、相關係數 r 以及各項平均值。

公式說明

令 \(u_i = \ln(x_i)\)。先計算 u 與 y 的平均值,再算出平方和 \(S_{xx} = \sum (u-\bar{u})^2\)、\(S_{yy} = \sum (y-\bar{y})^2\),以及交叉乘積 \(S_{xy} = \sum (u-\bar{u})(y-\bar{y})\)。斜率為 \(B = S_{xy} / S_{xx}\),截距為 \(A = \bar{y} - B\cdot\bar{u}\),相關係數則為 \(r = S_{xy} / (\sqrt{S_{xx}} \cdot \sqrt{S_{yy}})\)。 $$ y = A + B\,\ln(x) $$ $$ \text{where}\quad \left\{ \begin{aligned} B &= \frac{\sum (u_i - \bar{u})(y_i - \bar{y})}{\sum (u_i - \bar{u})^2}, \quad u_i = \ln(x_i) \\ A &= \bar{y} - B\,\bar{u} \\ r &= \frac{\sum (u_i - \bar{u})(y_i - \bar{y})}{\sqrt{\sum (u_i - \bar{u})^2 \,\sum (y_i - \bar{y})^2}} \end{aligned} \right. $$ 請特別注意,畫面上顯示的「平均 x」是幾何平均 \(\exp(\bar{u})\),而不是算術平均,因為整個擬合是在對數空間中進行的。

Advertisement
展示對數曲線上截距 A 與斜率係數 B 的示意圖
A 決定曲線的垂直位置,B 控制其隨 \(\ln(x)\) 上升的陡峭程度。

範例演算

以 (1, 2.0)、(2, 4.0)、(3, 5.0)、(4, 5.5)、(5, 6.0) 這幾個點為例:\(\text{meanLnX} = 0.957498\)、\(\text{meanY} = 4.5\)、\(S_{xx} = 1.615493\)、\(S_{yy} = 10.0\)、\(S_{xy} = 4.003192\)。因此 \(B = 2.4780\)、\(A = 2.1273\)、\(r = 0.9963\)(高度相關)。擬合出的曲線為 $$ y = 2.1273 + 2.4780\cdot\ln(x) $$ 幾何平均 \(x = \exp(0.957498) = 2.6051\)。

常見問題

為什麼「平均 x」不是我輸入 x 值的平均?因為迴歸是針對 \(\ln(x)\) 來計算的,在這個模型裡,x 資料的自然中心其實是幾何平均 \(\exp(\overline{\ln x})\),所以顯示的就是這個值。

該如何解讀相關係數 r?\(|r|\) 大於 0.7 表示關係強烈,0.4–0.7 為中等,0.2–0.4 為微弱,低於 0.2 則幾乎沒有相關性。

如果我所有的 x 值都一樣怎麼辦?這時 \(S_{xx} = 0\),斜率會因為除以零而無法定義,擬合也就無法計算;你至少需要兩個不同的 x 值。

最後更新: