今回は貴金属流通統計調査の金の需要データを使って、線形回帰の練習をしてみたいと思います。まずは、CSVファイルに保存しているデータをread.csv関数を使って読込みます。
このようなデータです。電機機械の需要が一番多いですね。グラフにしてみましょう。plot関数を使います。
type="b"とするとこのように、グラフがプロット点とラインの両方を表示します。
まずは、時間の経過とともに値が増えている感じもしますので、時間ファクターで線形回帰してみます。lm関数です。
まず、time <- c(1:17)で時間ファクターを作成して、lm関数を使っています。結果をmodel1という名前の箱に入れて、summary関数で結果を呼び出しています。
一番下の行のp-valueを見ると、値が0.05193なので有意ではないです。
このモデルに他の需要を加えてみましょう。どれを入れましょうか?相関係数をcor関数で出して、一番相関しているものを追加してみましょう。
宝飾との相関係数が0.425で一番高いですね。宝飾を加えたモデルをみてみましょう。
p-value = 0.1405 > 0.05 で有意ではないですね。宝飾を加えたモデルのほうがp-valueが大きくなってしまいました。
さらに、美術工芸品を加えたモデルはどうでしょうか?
p-value = 0.08467 > 0.05 ですので有意ではないです。でも、model2よりはいいですね。
歯科医療を加えてみましょう。
p-value = 0.1679 > 0.05 なので有意ではありません。
逆相関ですが、メッキよりも相関係数の絶対値は大きいメダルを加えてみます。
p-value = 0.2197 > 0.05 です。有意ではないです。
最後はメッキも加えてみましょう。
p-value = 0.3353 > 0.05 で有意ではないです。
ということで、金の電機機械の需要を他の用途の需要で線形回帰するのは難しいということがわかりました。
lm関数で簡単に線形回帰分析ができるのが凄いですね。