時系列データの収集と分析

時系列データの収集と分析
経済情報処理基礎
2015 年 1 月 6 日(火)
時系列データとは,「時間の流れに沿って観測されるようなデータ」であり,株価や為替レート,GDP
を始めとする経済データから,日々の気温・雨量などの気象情報・毎月の交通事故発生件数や心電図な
どのデータまで様々な分野で扱われている.とくに経済に関連するものは「経済時系列データ」と呼ば
れる.ここでは,まず,インターネットの普及により比較的に身近なものとなった経済時系列データを
収集するいくつかの方法を紹介する.次に,入手したデータの一部を用いて,2 つのデータ間の関係を見
出す方法の 1 つである「回帰分析(とくに単回帰分析)」を Excel の「データ分析」というツールを利用
して実行する方法を解説し,時系列データ間に潜む関係を探ることの初歩を学ぶ.併せて,今回の分析
に必要となるデータ整理・変換方法も説明する.この講義の目的は,次の 2 つにまとめられる.
1.
自分で身近にある時系列データを収集する.
2.
回帰分析を使ってデータ間の関係を探る.
※ 次の URL にアクセスし,経済情報処理基礎の HP から講義で用いる Excel ファイル「data-sheet.xlsx」
をダウンロードして保存:http://www.e.okayama-u.ac.jp/lectures/excel2013/index.html
保存したファイルを開き,Excel を立ち上げておく.
1.データの収集と変換
1.1
経済データの主な入手先例
近年では数多くのデータが様々な機関のウェブサイトで公表されており,インターネットを経由すれ
ば容易に手に入れることができる.ここでは,今回の講義で扱う下記の 2 つを紹介するに留めておく.
e-Stat 政府統計の総合窓口(各府省の公開統計データのポータルサイト):

http://www.e-stat.go.jp/SG1/estat/eStatTopPortal.do
人口・世帯などの国勢統計から,GDP・消費・所得(国民経済計算:SNA)・労働・賃金や消費者物
価など政府が公表している様々な統計データ全般が Excel・CSV 形式で入手できる.
Yahoo! ファイナンス: http://finance.yahoo.co.jp/

株価・為替レートなどの日次・週次・月次データ.株価・為替レートは他にもあるが入手しやすい.
以降では,実際にこれらのウェブサイトにアクセスしてデータを入手してみよう.
1.2
e-Stat の利用
e-Stat を上手く利用すれば数多くの経済データを入手することができるが,ここでは利用例として日
本の人口変動を取り上げ,実際のデータから傾向を見てみる.1899 年∼2012 年までの人口統計デー
タ(114 年間の年次データ)を収集し,人口の推移を棒グラフとして表してみよう.
-1-
時系列データの収集と分析
□ 例題 1:人口の推移グラフ
【作業手順】
[1] e-Stat の HP に移動するために次の URL にアクセス(あるいは,アドレスバーに直接打入力して
も構いません)
:http://www.e-stat.go.jp/SG1/estat/eStatTopPortal.do 下記ページが表示される.
[2] 上記にある「主要な統計から探す」⇒ 人口・世帯「人口動態調査」を順次クリック.
[3] 人口動態統計の上から 13 番目の「人口」の「2013 年」をクリックする.
[4] 「1 年次・性別人口」の
マークをクリックすると,
となるので,「保存(S)」の右にある▼をクリックすると表れる「名前を付けて保存」を選択し,
任意のフォルダに「pop.csv」と名前を付けて保存する.
-2-
経済情報処理基礎
[5] 保存したファイル「pop.csv」を開き,1899 年∼2013 年までの人口推移の棒グラフを作成.
① 1899∼2013 年の「総数」(B8−B122 のセル)を反転させて選択
⇒ 右クリックで「コピー」.
「data_sheet.xlsx」の「例題 1」シートにある「人口」の欄(C5 セル)に貼り付け.
② 「人口」を反転し選択(ラベル名も含む) ⇒ 「挿入」タブの「2−D 縦棒」で棒グラフを作成.
③ 横軸ラベルの編集: グラフを選択し,「グラフツール」の「デザイン」から「データの選択」
をクリックすると,下記「データソースの選択」ボックスが表れるので右側「編集」を押す.
下記「軸ラベル」のボックスが表れるので「軸ラベルの範囲」を A 列の「1899~2013」の範
囲(B5∼B119 のセル)として「OK」を押すと,軸ラベルが「1899~2013」になる.
-3-
時系列データの収集と分析
④ タイトルや目盛りを見やすいように適宜調整.次のような棒グラフとなったら完成.
日本の人口増加が鈍化して行っていることが見て取れる.
1990 年ごろより
人口増加が停滞.
1.3
株価・為替レートデータの収集
GDP や消費データと並んで頻繁に利用される経済時系列データとして,株価や為替レートのデータが
り,とくにファイナンスデータとも呼ばれる.ここでは,このようなデータの手軽な入手先である,
「Yahoo!ファイナンス」を利用して 2009 年 4 月~2013 年 3 月の期間の「日経平均株価」と「ドル円
為替レート」のデータ(直近 4 年度の月次データ)を収集してみよう.
□ 例題 2:日経平均株価とドル円為替レートの収集
【作業手順】
[1] 次の URL にアクセス:http://finance.yahoo.co.jp/(Yahoo!のトップから「ファイナンス」をク
リックでもよい).上段にある「コードまた企業名を入力」の欄に「日経平均株価」と入力し「株
価検索」ボタンをクリック.
[2] 下記の日経平均株の価格が表れたら左から 3 番目の「時系列」を選択する.
-4-
経済情報処理基礎
[3] 直近の日時時系列データが表示されるので,下段の方にスクロールさせ,データの期間と間隔を
選ぶ次のボックスを見つけ,●を「デイリー」から「月間」に移し,
「2009 年 4 月」と「2013 年
3 月」を選択し,表示ボタンを押す.
[4] 表示された株価データを,マウスの左ボタンを押しながら下方までスクロールさせて 2009 年 4
月までを反転させて選択し,マウスを右クリックし「コピー」
(「日付・始値・安値・高値・終値」
のラベルも含める).
「data-sheet」の「例題 2 作業」のシートに移動し,B3 セルに貼り付ける.
※ 張り付けたときに上手くデータがセルの列に分かれない場合は,先頭の列を選択後,「データ」
タブの「区切り位置」をクリックし,「スペースによって…」に●を変更して調整する.
[5] データの並べ替え: 新しい年月順に並んでいるので,古い年月順に並び替えよう.
① データ範囲全体(B3∼F51 セル)を選択,
「編集」タブの「並べ替えとフィルター」をクリック.
② 「昇順」をクリックで古い年月順に並び替える.
データ範囲全体を選択してか
ら「並べ替えとフィルター」
-5-
時系列データの収集と分析
[6] 「終値」の価格(F4∼F51 セル)を,
「例題 2」シートの「日経平均株価」(D5 セル)に張り付ける.
[7] ドル円為替レートは,Yahoo!ファイナンスのトップにある「検索ランキング」(※この欄は動くの
で注意)に表示される「米国ドル」をクリックすると,ドル円為替レートの価格が表示される.
* 右下にある「マーケット」ボックスの「アメリカ ドル/日本 円」をクリックでもよい.
[8] 以降は日経平均株価と同様の作業.
「例題 3 作業」シートの I3 セルにコピーしたデータを貼り付
け,並び替えた終値を「例題 3」のシートの「ドル円為替レート」(C5 セル)に張り付ける.
[9] 各時系列データの折れ線グラフを「挿入」タブの「2−D 折れ線」で作成し,時間の経過による
変動を見てみる.※ 例題 1 の[4]で扱った「軸ラベル」の編集を使って,横軸を年月に変換.
-6-
経済情報処理基礎
1.4
株価・為替レートデータの変換
例題 2 で描いた折れ線グラフを見ると,時間の経過とともにデータがふらつきながら動いているのが
見て取れる.このような現象は「ランダム・ウォーク」と呼ばれ,次節の回帰分析を行う上で扱いに
くいことが知られている.そのため,株価・為替レートの価格データを次の「変化率」(「対数変化
率」あるいは「収益率」とも呼ばれる)に変換しよう.
変化率(収益率): log( ) − log(
)
は,添え字の i 時点で観測されたデータを表し,log は自然対数を表す.
* 変化率(収益率)に変換するとデータ数が 1 つ減ることに注意.
.......
⇒ 今回のデータ期間であれば,2009 年 5 月∼2013 年 3 月の変化率データ.
□ 例題 3:株価・為替レートの変化率
1.3 で収集した 2 つの価格データを変化率(収益率)データに変換し,散布図を作成してみよう.
【作業手順】
[1] 「LN 関数」を使ってデータを自然対数変換し,次のように 1 期前との差分を作る.
LN(セル番号)−LN(セル番号−1)
まず,ドル円為替レートの 2009 年 5 月の変化率を計算.2009 年 5 月のデータに対数を取った値
から 2009 年 4 月のデータに対数を取った値を引く(関数名は大文字・小文字どちらでもよい).
[2] 次にオートフィル機能を使って計算を縦方向にコピーすると,2013 年 3 月までの変化率を得る.
「E6」セルの右下にカーソルを持って行って「+」に変わ
ったら,2013 年 3 月までドラッグして計算をコピーする.
-7-
時系列データの収集と分析
[3] 同様に日経平均株価の変化率も求める(F5 のセルに「= LN(D6)−LN(D5)」を入力してコピー).
年月
2009年4月
2009年5月
2009年6月
2009年7月
2009年8月
ドル円為替レート
98.5599
95.29
96.3199
94.66
93.01
日経平均株価
8,828.26
9,522.50
9,958.44
10,356.83
10,492.53
ドル円為替レート変化率 日経平均株価変化率
-0.033739612
0.07569948
0.01075007
0.044763013
-0.017383419
0.039225773
-0.01758451
0.01301737
[4] 為替レート変化率を横軸・株価変化率を縦軸にした散布図を描く(適宜「グラフツール」で調整).
※ 散布図を描く際には選択データの 1 列目が横軸(X 軸),2 列目が縦軸(Y 軸)になるので注意.
 右上がりの比例関係.
 直線をあてはめれそう.
[5] 散布図に直線をあてはめてみよう(近似直線を引く).グラフを選択し,右上端に「+」マークが
現れたらクリック.このとき,「グラフ要素」の項目が出てくるので,「近似曲線」(最下段の項
目)にチェックを入れると,散布図に点線で(近似)直線が引かれる.
[6] (近似)直線にカーソルを持って行き,右クリックすると「近似曲線の書式設定」が最下段に出て
くるのでクリック.右側にボックスが現れ,下方にスクロールして行くと,「グラフに数式を表
示する」があるのでチェックを入れる.点線の近くに(近似)直線を表す数式が表示される.
直線を表す数式が表示.
-8-
経済情報処理基礎
2.回帰分析
例題 3 の散布図にあてはめられた直線を眺めてみると 2 つのデータ間には右上がりとなるような近似
的な線形(直線)関係があると予想できる.回帰分析とは,このような線形関係を見出し,一方が他方を
決定し説明する関係(因果関係)と見なして,一方が他方に影響を与える要因となっているかを分析
する方法である.ここでは,2 つの変数(データ)間の関係を対象とする回帰分析のみ取り上げる.
2.1
回帰モデルと最小 2 乗法
 2 変数の線形関係
n 組のデータ( , ),
= 1, ⋯ , が与えられるときに,変数 と に線形関係を想定しよう:
=
+
 変数 が変数 を
.⇔ 変数 が変数 に

:被説明変数(従属変数) ⇒

:説明変数(独立変数) ⇒

, : を定数項(切片), を回帰係数(傾き)と呼ぶ. , は未知.
.
=
.

0( が正の値)⇒ 変数 が増えると変数 が増える関係.

0( が負の値)⇒ 変数 が増えると変数 が減る関係.

*
=
.
= 0 ⇒ 変数 と変数 には
.
は「傾き」なので, の 1 単位変化に対する の変化も表す.回帰分析の関心対象の 1 つ.
 回帰モデル
散布図にいかにうまく直線: =
+
を引こうとも,すべてのデータ点を通ることはまずない.
⇒ データには必ず何らかの誤差・変数 の値は
 回帰モデル:
が加わって決まると考える.
とする.
=
+
+
,
= 1, ⋯ , .
 目的: 誤差全体が最も小さくなるよう , を決める =
直線を求める.
※ データから未知の , (パラメータ)を定めることをとくに「推定」と言う.
図 1:散布図と線形関係(直線)・誤差のイメージ.
+
−( +
-9-
:知りたい直線
) :誤差
時系列データの収集と分析
 最小 2 乗法
 誤差は正負どちらの値も取りうる ⇒
 全体の誤差を測りたい
は正の値しか取らない.
⇒ n 個の誤差 2 乗について
.
上記 2 点から,次を最小化するように , を定めるのが最小 2 乗法の考え方:
)
−( +
( −
=
⇒ 定められた , を「 , 」と表記し,「
⇒
, から定まる直線を「
−
)
」と呼ぶ.
」と呼び,「 =
+
」と表記.
(※ 回帰直線を求めることを「回帰モデルを推定する」とも言う.)
* Excel の「データ分析」に用意されている「回帰分析」を使えば最小 2 乗推定値 , や,以降で説明
する「決定係数」
・
「t 値」も計算して出力してくれる.次の例題で「回帰分析」の実行方法を解説し,
実際に回帰直線を求めてみよう.
□ 例題 4‐1:株価と為替レートの回帰直線
ここでは,ドル円為替レートが株価を決める(因果)関係を考え,為替レートが株価の動きを説明する
要因なのかどうか回帰分析で調べよう.このような関係を下図のように回帰モデルとして表現.
図 2: (因果)関係の予想と回帰モデル.
日経平均株価( )
回帰モデル:
ドル円為替レート( )
=
+
+
,
= 1, ⋯ , .
⇒ 日本経済は輸出に依存していると考え,企業の平均株価である日経平均は為替レートに左右し
て決まるとした線形関係(回帰モデル).※矢印の向きが関係の方向(原因と結果)を表す.
【「回帰分析」の使い方】
例題 3 で作成したそれぞれの変化率のデータを用いて回帰直線を求めよう.
[1] 「データ」タブの「データ分析」を選択し1 ,表れるダイアログの「回帰分析」をクリック.
1
「データ分析」がない場合: 「ファイル」タブ ⇒「オプション」⇒「アドイン」⇒「設定」
(ダイアログの下の方)と
クリックして行くと,「アドイン」のダイアログが表れるので「分析ツール」に☑を入れる。
- 10 -
経済情報処理基礎
[2] 回帰分析に用いるデータの範囲を入力する.
① 「入力 Y 範囲」に被説明変数 である「日経平均株価変化率」のデータ範囲「F5∼F52」
.........
のセルを入力(データ名を含む範囲).
② 「入力 X 範囲」に説明変数 である「ドル円為替レート変化率」のデータ範囲「E5∼E52」
.........
を入力(データ名を含む範囲).
③ 先頭行をデータ名としているので「ラベル」にチェックを入れ(他はそのままでよい),
「OK」
をクリックする.
図 3:回帰分析ボックスへの入力例.
データの入力範囲にラベル(データ名)が含まれてお
り,「ラベル」にチェックが入っていることを確認.
[3] 作業しているシートの左隣に自動的に新規シートが作成され,以下の出力結果が得られる.
決定係数(2.2 節参照)
係数に対する「t 値」
(2.2 節参照)
「係数」の値が最小 2 乗推定値 ,
変数名が見切れている
ので幅を適切に調整
- 11 -
時系列データの収集と分析
⇒ 「回帰分析」の出力結果より = 0.00841,
回帰直線:
= 1.228416であり,下記回帰直線が得られる.
= 0.00841 + 1.228416
* 散布図の「近似曲線」で引かれる(近似)直線は,最小 2 乗法によって定まるこの回帰直線である.
2.2
回帰直線の評価
最小 2 乗法で回帰直線が定まれば,即座に被説明変数 が説明変数 によって決まり,説明されている,
と言えるわけではない.回帰直線を評価し,2 つの変数(データ)間に想定したような線形関係があるの
かを吟味して回帰分析となる.評価するための主な指標の 2 つが決定係数と t 値.
 決定係数
回帰直線がよくあてはまれば線形関係にあり,被説明変数 全体の変動を上手く説明できる.
⇒ 被説明変数 の変動を回帰直線がどの程度説明できるのかを測る指標が「決定係数:
* 決定係数(
」.
): 出力結果の「重決定R2」が決定係数の値.0 から 1 の間の値を取る.
 1 に近いほど回帰直線の
= 変数 の変動を上手く
 100×[決定係数(重決定 R2)]を回帰直線で
.
と解釈できる.
 t値
仮説検定に基づいて, が説明変数として役に立つのか,影響を与える変数なのかを調べるための
指標.出力結果の「t」の欄に計算されている.
※ 通常は,説明変数の係数 に対して評価し,切片(定数項) は関心の対象にならない.
* t 値の判断基準: 一般的には絶対値で 2 より大きいか小さいかで判断.
| |
2:説明変数 は
,被説明変数 に影響を
| |
2:説明変数 は
,被説明変数 に影響を
.
.
□ 例題 4‐2:株価と為替レートの回帰直線の評価
例題 4‐1 の出力結果から決定係数と最小 2 乗推定値 の t 値を見てみよう.
 定係数(重決定 R2) = 0.395696.
⇒ 日経平均株価(変化率)の変動の

を定められた回帰直線で説明.
の t 値:t = 5.428248.
⇒ 絶対値で 2 より大きく, は
, の変動の説明に
.
 為替レートは株価に影響を与えており,その変動を決める要因の 1 つと考えることができ,株価
変動の 4 割程度は為替レートによって説明されている.
※
= 1.228416の値については,「傾き」であることから,為替レート変化率が 1%増えると,株
価変化率が 1.228416%上昇すると解釈できる.
- 12 -
経済情報処理基礎
2.3【付録】最小 2 乗法の精度:モンテカルロ・シミュレーション
最小 2 乗法によって直線を定める , を求めたが,それらの真の値を知ることはできないので,実際に
どの程度の精度で得られているのか分からない.ここでは,真の値を与えた仮想的なモデルで人工的
なデータを作成し,最小 2 乗法のパフォーマンスを検証してみよう.「例題 5」のシートに移動する.
□ 例題 5:シミュレーションによる最小 2 乗法の検証
【仮想モデル】 = 1.0,
= 0.5,
= 100とした回帰モデル:
= 1.0 + 0.5
+
,
= 1, ⋯ ,100.
⇒ 線形関係: = 1.0 + 0.5 に誤差 が付加してデータ が観測されている設定.
⇒
は 1∼100 までの値を順番に取るデータとし,誤差 として「正規乱数」を使う.
【作業手順】
[1] 誤差 となる「正規乱数」を Excel の「データ分析」で生成し,人工的に のデータを作成.
① 「データ分析」の「乱数発生」を選択.
② 「変数の数」に「1」,「乱数の数」に「100」(データ数と同じ)と入力し,「分布」は「離散」
となっているので,下矢印をクリックして「正規」に変更する.「出力オプション」は「出力
先」に●を移して「B5」と入力し,そのほかはそのままで「OK」を押す.
※ 作成される乱数は例題と同じにはならないので注意.
③ D5 セルに「= 1.0 + 0.5*C5+B5」と入力し,
と
のデータを用いて
= 1.0 + 0.5
+
ら を計算.オートフィル機能で D104 セルまでコピーして 100 個の のデータを生成.
- 13 -
か
時系列データの収集と分析
[2] 「回帰分析」で入力 Y 範囲を作成したデータ の範囲(D4∼D104)とし,入力 X 範囲を (1∼100)
の範囲(C4∼C104)として最小 2 乗推定値 , を求める.
[3] [2]で得られた最小 2 乗推定値 , と真の値 = 1.0,
= 0.5にどの程度の差があるか見てみよう.下
記は出力結果の一部抜粋・真の値に近いが多少ずれた最小 2 乗推定値が得られている.
切片
説明変数(X)
係数 標準誤差
t
1.226537 0.202062 6.070113
0.496918 0.003474 143.0488
※ データ数(標本サイズ)を = 100以外にも 10 や 500 等にして値の変化を調べてみる.
↑「決定係数」や「標準誤差」・「t 値」の変化も見てみるとよい.
3.課題
(1) Yahoo!ファイナンスから,あなたが関係があると予想する 2 つの時系列データ(企業株価や為替レ
.... . . ...... . .. .
ート)を収集し,それぞれの折れ線グラフを作成しなさい.期間は 2011 年 1 月∼2014 年 12 月で
月次データとすること.また,以降の回帰分析で一方を被説明変数 とし,他方を説明変数 とす
ることを踏まえて,なぜその 2 つを選んだのか理由も述べること.
(2) (1)の時系列データを変化率(収益率)に変換し,被説明変数 となるデータを縦軸,説明変数 とな
るデータを横軸に取った散布図を描きなさい.
(3) (2)で作成した 2 つの変化率データを用いて,一方を被説明変数 とし,他方を説明変数 とした回
帰直線を「データ分析」の「回帰分析」を使って求めなさい.出力結果も添付すること.
(4) (3)の出力結果の決定係数と t 値から回帰直線の評価を行いなさい.
※ 課題レポート作成時の注意

少なくともどちらかのデータは企業の株価とし,株価検索を利用して目的の企業を探す.

問題(1)の折れ線グラフにはタイトルを入れ,どのデータを用いたか分かるようにする.

グラフや「回帰分析」の出力結果は見やすいように貼り付けること.
- 14 -