- 締切済み
近似曲線の数式の値を指定した場合のR二乗値について
ただ今,エクセルで近似曲線のR二乗値を用いた解析を行っております. 私は近似式でははく,単にy=xの式に対するプロットした点のR二乗値が知りたいと考えています. R二乗値がなるべく1に近づくようにモデル式の係数を検討したいのでこうような方法を取っています. 縦軸に実験値,横軸にモデル値を取りプロットし,R二乗値が1に近づけば近づくほど,できたモデル式は実験値を上手く表現出来ているものだと判断したいためです. すみませんがよろしくお願いいたします.
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- ramayana
- ベストアンサー率75% (215/285)
1 ご質問に答える前に、最小二乗法におけるR二乗値(or 決定係数)の考え方を説明します。 サンプルサイズをnとして、Y=(y1, y2, ..., yn)を実験値とします。これは、実数n次元空間の中のベクトルとみることができます。また、X=(x1, x2, ..., xn)をベクトルとして、モデル値が、適当な実数aを使ってa X=(ax1, ax2, ...,a xn)と表されるとします。すると、残差、すなわち実験値とモデル値との差は、Y-aX=(y1-ax1, y2-ax2, ..., yn-axn)と表されます。 最小二乗法では、XとY-aXが垂直になるようにaが決定されます。また、R二乗値をR^2とすれば、 [1] R^2 = |aX|^2 / |Y|^2 = ((ax1)^2+…+(axn)^2) / ((y1)^2+…+(yn)^2) となります。|X|や|Y|はベクトルの長さを表します。XとY-aXが垂直ですから、三平方の定理により、[1]式は、次のように書き換えることもできます。 [2] R^2 = 1 - |Y-aX|^2 / |Y|^2 =1 - ((y1-ax1)^2+…+(y1-axn)^2) / ((y1)^2+…+(y2)^2) 三平方の定理により、必ず0≦R^2≦1 になります。 2 ご質問のケース ご質問のケースでは、上の記号の下で、a=1に固定することになります。したがって、[1]式ないしは[2]式で、a=1と置けば、形式的にR二乗値が計算できます。ただし、この場合、XとY-Xが垂直と限らないので、[1]式を使ったときと[2]式を使ったときで値が違ってきます。R二乗値が大きいほど当てはまりが良いと考えたいのなら、[2]式を使う方がよいでしょう。ただ、この場合、R^2<0となることもあります。 3 老婆心ながら しかし、もともとの問題意識に立ち返るなら、やっぱり、最小二乗法によりaを推計したほうがよろしかろうと思います。その結果、もし、aが1以外の値となった場合は、XよりaXのほうが当てはまりが良いということなので、Xを捨ててaXをモデル値として採用すればよいのです。 エクセルでは、「分析ツール」の中の「回帰分析」を使えば簡単に計算できます。最初にアドインプログラムを読み込む必要があるかもしれません。使い方は、エクセルのヘルプを参照してください。今回のケースでは、「定数に0を使用」の欄をオンにして使います。計算結果の中の「重決定R2」がR二乗値で、「X値1」の「係数」欄がaです。
Excelには、RSQというワークシート関数があります。ご期待に沿える関数と思います。Excelの「関数の挿入ボタン」を押す⇒「統計関数」を選択⇒「RSQ」を選択⇒「この関数のヘルプ」をクリックで、使用法を読めます。