
第9回 非線形回帰分析
![]()
第7回、第8回では単に回帰分析、重回帰分析と呼んでいましたが、これらは線型関係を導き出すものでした。ここでは線型ではないが、なんらかの関係が見られる変数同士の回帰分析について行います。基本的な考え方としてはある変数変換を行い、線型回帰の考え方を応用していくという方法になります。それぞれの例題に対して変数変換の方法を各例題で示しますので、あとは従来の回帰分析の方法で分析してください。分析の詳細については第7回の回帰分析、第8回の重回帰分析を参照のこと。
(P89)表1は、わが国の物価上昇率Pと失業率Uの関係を示しています。
@ ヨコ軸にU、タテ軸にPをとり、このデータの散布図を描きなさい。
A 単純回帰モデル
を、OLSで推定しなさい。
B つぎのフィリップス曲線
を、OLSで推定しなさい。
C A、Bの理論値について@の散布図に加えなさい。
D A、Bの決定係数を比較し、どちらのモデルがよいか判断しなさい。
E Bの推定式で失業率が
(a) 4%
(b) 5%
(c) 6%
のときの物価上昇率を予測しなさい。
![]()
@、Aについては各自で行ってください。
物価上昇率と失業率の間にはフィリップス曲線と呼ばれる関係
![]()
が知られています。このような分数関数に関する回帰分析を考えます。
![]()
変数変換としては

といった変換を行います。
今、例題1のワークシートの「1/U」となっているD列に変換した値を出力されるようにします。最初のセル「D3」を指定して
=1/B3
と入力し,Enterを押します。

作成した関数をD列の残りに貼り付けていきます。

エクセル統計の重回帰分析ダイアログボックスを出力させて、目的変数には物価上昇率のC列の値、説明変数には作成した1/Uの値のD列の値を指定します。
理論値と推定の出力結果も指定しておきましょう。

出力結果のうち、特に重要な部分は以下のとおりとなります。

この結果から回帰式は
P=−6.31901+19.1338/U
とえられます。また決定係数は0.8554と得られました。
![]()

理論値のグラフをより正確に出力させたい場合は説明変数の値に対する理論値の計算をより多く行うことによりさらによい理論値のグラフが得られます。ここではグラフをよく見せるための裏技を行いましょう。データを見ると失業率は大体2%から4%の間で推移していることがわかります。この結果から失業率が2%から4%となっている間で0.1%刻みに出力させましょう。
まず理論値の計算のUの下に2.0、2.1と入力します.


入力したセルを指定し、下のセルへ4になるまで貼り付けを行います。

次にPの値を推定します。Bの結果から
P=−6.31901+19.1338/U
と得られました。「−6.31901」は「I3」、「19.1338」は「K3」に出力されています。
この値は絶対参照させて、Uの値はE列にある値を使います。よって「F3」に
=$I$3+$K$3/E3
と入力します。

この関数を他のF列にはりつけていきます。
この結果を散布図に追加し、マーカーを線に変更すれば以下の結果が得られます。
わからない場合は散布図の作成方法を参照すること
、

モデルのよさをはかるのは決定係数です。決定係数が高ければ高いほどよい結果が得られます。今、以下の結果になったとすると、Bのモデルの方が決定係数が高くなっています。よってBの方がよいモデルといえます。

B
失業率がある値の場合の推定式は理論値の計算と同様の関数を入力します。よって
| (a) | 4%の場合 | =$I$3+$K$3/4 |
| (b) | 5%の場合 | =$I$3+$K$3/5 |
| (c) | 6%の場合 | =$I$3+$K$3/6 |
と入力します。
![]()

(P91)表2は、平成元年からの携帯電話の普及率を示しています。
@ ヨコ軸に時間、タテ軸に普及率をとり、このデータの散布図を描きなさい。
A 単純回帰モデルを、OLSで推定しなさい。
B ロジスティック関数を線型化変換して、OLSで推定しなさい。
C A、Bの理論値を1年から30年まで計算し、@の散布図に加えなさい。
D A、Bの決定係数を比較し、どちらのモデルがよいか判断しなさい。
E A、Bの推定式で
(a) 2年
(b) 30年
のときの普及率を予測しなさい。また、この結果からロジスティック曲線を用いなければならない理由がわかります。ロジスティック回帰を行わなければならない理由を述べなさい。
![]()
まずは普及率の計算を行いましょう。携帯電話の普及率とは
普及率=携帯電話契約者数÷人口
で計算できます。
今、例題2のワークシートの「普及率」となっているD列の1年の値を出力するセル「D2」を指定して
=C2/B2/
と入力し,Enterを押します。

作成した関数をD列の残りに貼り付けていきます。

@、Aについては各自で行ってください。
普及率などの動向を見るデータに対してはロジスティック回帰と呼ばれるものを用いて分析します。ロジスティック関数とは
![]()
となる非線型回帰モデルを指します。(ここでeは指数関数をさす)
普及率などのデータはこの方法により回帰を行えば当てはまりがよくなるといわれています。
![]()
変数変換としては

といった変換を行います。
エクセルでは底がeである自然対数はLNという関数を用います。
例題2のワークシートの「変化データ」となっているD列に変換した値を出力されるようにします。最初のセル「D3」を指定して
=LN(D2/(1−D2))
と入力し,Enterを押します。
エクセル統計の重回帰分析ダイアログボックスを出力させて、目的変数には携帯電話普及率の変換データE列の値、説明変数には年次の値のA列の値を指定します。
理論値と推定の出力結果も指定しておきましょう。
出力結果のうち、特に重要な部分は以下のとおりとなります。

この結果から回帰式は
log(Y/(1-Y)=-6.65542+0.515568X
つまり

とえられます。また決定係数は0.9839と得られました。
![]()

最初に理論値の計算を行います。
例題1と同様に解答結果から理論値を計算します。
まず年次の下に1、2と入力します.

入力したセルを指定し、下のセルへ30になるまで貼り付けを行います。

次にAの推定式からYの値を推定します。Aの結果から
Y=−0.15778+0.043293x
と得られました。「−0.15778」は「L2」、「0.043293」は「N2」に出力されています。
この値は絶対参照させて、xの値はF列にある値を使います。よって「G3」に
=LI$2+$N$2*F3
と入力します。

この関数を他のF列にはりつけていきます。
次にBの推定式からYの値を推定します。Bの結果から

と得られました。「6.66…」は「L3」、「0.052…」は「N3」に出力されています。
この値は絶対参照させて、xの値はF列にある値を使います。まずは指数の部分だけ計算しましょう。よって「H3」に
=EXP($L$2+$N$2*F3)
と入力します。

この結果からBの推定結果は「I3」に
=H3/(1+H3)
と入力します。

この結果を散布図に追加し、マーカーを線に変更すれば以下の結果が得られます。
わからない場合は散布図の作成方法を参照すること
、

モデルのよさをはかるのは決定係数です。決定係数が高ければ高いほどよい結果が得られます。今、以下の結果になったとすると、Bのモデルの方が決定係数が高くなっています。よってBの方がよいモデルといえます。

B
普及率がある値の場合の推定値はCで計算できました。計算結果を貼り付ければ答えられます。それぞれの解答欄のセルに
| Aの結果 | Bの結果 | |
| (a) | =G4 | =I4 |
| (b) | =G32 | =I32 |
と入力します。
最後に各値を百分率で表すため、
を用います。
普及率は0%から100%までの値しかとりません。しかし線型回帰を行ったAの推定結果ではマイナス(−7.12%)や100%以上(114.1%)の値を推定してしまうので現実に即しません。このような理由から普及率など百分率を表すデータに対してはロジスティック回帰を行わなければなりません。
![]()

![]()
表4−8は、ある産業の付加価値生産額Y、労働者数数L、および資本額Kの推移を実質額で示したもので、tはトレンド変数にあたります。計測期間において、1人当たり労働時間に変化はないものとします。
@ 次の重回帰式をOLSで推定しなさい。また、自由度調整済決定係数
も求めなさい。
![]()
A 次のコブ=ダグラス型生産関数(C−D関数)を対数変換し、OLSで推定しなさい。また、自由度調整済決定係数
も求めなさい。
![]()
eは自然対数の底(=2.71828)、uは誤差項。
![]()
![]()

この結果から

と得られたので重回帰式は
![]()
となります。
![]()
![]()
コブ=ダグラス型生産関数
![]()
は対数をとることにより、以下のように式変形でき、logL、logKを変数とする重回帰分析とみなすことができます。

変数変換としては

といった変換を行います。
エクセルでは底がeである自然対数はLNという関数を用います。
例題3のワークシートの「F4」から「I4」までを以下のように入力します。
| F | G | H | I | ||
| 3 | y=LnY | l=LnL | k=LnK | t | |
| 4 | =LN(B4) | =LN(C4) | =LN(D4) | =E4 |
作成した関数をF列からI列の残りに貼り付けていきます。

エクセル統計の重回帰分析ダイアログボックスを出力させて、目的変数には「y=LnY」のF列の値、説明変数には「l=LnL」、「k=LnK」、「t」の値のG列からI列の値を指定します。
理論値と推定の出力結果も指定しておきましょう。

出力結果のうち、特に重要な部分は以下のとおりとなります。

この結果から回帰式は
logY=1.3017+0.503321LnL+0.571649LnK+0.033713t
とえられます。
つまりここで得られた数値はそれぞれ
| 変数名 | 偏回帰係数 | |
| l=LnL | 0.503321374 | β1 |
| k=LnK | 0.571649283 | β2 |
| t | 0.033713467 | β3 |
| 定数項 | 1.301738554 | Lnα |
を表しています。よってαは
![]()
となります。エクセルで指数を計算する場合にEXPという関数を用います。また修正済決定係数は0.9959と得られました。
結果には
![]()
![]()
![]()
とします。
表5は1960年から2001年までの第1次就業者比率(X,%)と1人当たりGDP(Y,1000円)をまとめたものである。
@ ヨコ軸にX、タテ軸にYをとり、このデータの散布図を描きなさい。
A 単純回帰モデル
を、OLSで推定しなさい。
B つぎのフィリップス曲線
を、OLSで推定しなさい。
C A、Bの理論値について@の散布図に加えなさい。
D A、Bの決定係数を比較し、どちらのモデルがよいか答えなさい。
E Bの推定式で第1次就業者比率が
(a) 2%
(b) 10%
のときの1人当たりGDPを予測しなさい。
表4は主要耐久消費財の普及率(全世帯)のうち、昭和62年からのパソコンの普及率を示しています。
@ ヨコ軸に時間、タテ軸に普及率をとり、このデータの線付き散布図を描きなさい。
A 昭和62年を1として通し番号を振りなさい。
B ロジスティック関数を線型化変換して、OLSで推定しなさい。
C Bの理論値を平成20年まで計算し、@の散布図に加えなさい。
D Bの決定係数を求めなさい。
E 平成20年のパソコンの普及率の予測値を答えなさい。
この問題では普及率が%の値が出ています。この場合には変換方法として
=LN(Y/(100−Y)
とします。
![]()
表6は平成17年の都道府県別物価上昇率Pと失業率Uを示しています。
@ ヨコ軸にU、タテ軸にPをとり、このデータの散布図を描きなさい。
A つぎのフィリップス曲線 を、OLSで推定しなさい。
B Aの理論値について@の散布図に加えなさい。
C 推定したモデルは物価上昇率と失業率の関係を表すのに適していると思いますか?理由とともに答えなさい。
D 例題1も同様の分析を行っていますが、結果が異なります。どうして異なるのか、データの特徴なども説明した上で理由を述べなさい。さらにフィリップス曲線はどのようなデータに対して成立するのかを考えて答えなさい。