この計算ツールでできること
このツールは、各行に度数(重み)f を持つ観測データの表に対して、\(y = A + B\cdot\ln(x)\) という形の対数回帰曲線を当てはめます。度数による重み付けを使えば、グループ化されたデータや繰り返しのあるデータをコンパクトに入力できます。同じ (x, y) の組を何度も並べる代わりに、その個数 f を添えて一度だけ書けばよいのです。この計算は純粋な統計処理であり、どこで使っても結果は同じです——単位や特定の国のルールは関係ありません。
使い方
1行につき1つの観測グループを x y f の形式で入力します。度数の列は省略可能で、省略した場合は各行が1回(f = 1)としてカウントされます。x の自然対数をとるため、すべての x は 0 より大きい値でなければなりません。直線を一意に決めるために、x の値が異なる行を少なくとも2行入力してください。表示桁数(初期値は有効数字10桁)を選べますが、これは表示される数値の丸めだけを変えるもので、内部の計算自体には影響しません。
計算式の解説
グループを i = 1..m とし、\(n = \sum f_i\) とします。重み付き平均は $$\text{meanLnX} = \frac{\sum f_i\cdot\ln x_i}{n}$$ および $$\text{meanY} = \frac{\sum f_i\cdot y_i}{n}$$ です。重み付き平方和は $$S_{xx} = \sum f_i(\ln x_i)^2 - n\cdot\text{meanLnX}^2$$ $$S_{yy} = \sum f_i y_i^2 - n\cdot\text{meanY}^2$$ $$S_{xy} = \sum f_i\cdot\ln x_i\cdot y_i - n\cdot\text{meanLnX}\cdot\text{meanY}$$ となります。これより $$B = \frac{S_{xy}}{S_{xx}}$$ $$A = \text{meanY} - B\cdot\text{meanLnX}$$ $$r = \frac{S_{xy}}{\sqrt{S_{xx}}\cdot\sqrt{S_{yy}}}$$ と求まります。
計算例
すべて f = 1 の5行 —— (1,2)、(2,3)、(3,3)、(4,4)、(5,4) —— を使うと、\(\text{meanLnX} = 0.9574984\)、\(\text{meanY} = 3.2\)、\(S_{xx} = 1.6154888\)、\(S_{yy} = 2.8\)、\(S_{xy} = 2.0382328\) となります。したがって \(B = 1.2616933\)、\(A = 1.9919295\)、\(r = 0.9583567\) です。当てはめた曲線は $$y = 1.9919 + 1.2617\cdot\ln(x)$$ となり、強い相関を示しています。
よくある質問
度数の列は何をするものですか? 各行に重みを付けます。f = 5 の行は同じ観測値が5回あるものとして扱われるため、f = 1 の行の5倍の影響を当てはめに与えます。
r の読み方は? \(|r|\) が 0.7 を超えると強い相関、0.4〜0.7 で中程度、0.2〜0.4 で弱い相関、0.2 未満ではほぼ相関なしと判断します。
「回帰できません」と表示されるのはなぜ? 回帰を行うには、x の値が異なる行が少なくとも2つ必要で(そうでないと \(S_{xx} = 0\) になります)、度数の合計が正である必要があります。また、ln(x) を定義できるよう、すべての x は 0 より大きくなければなりません。