rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/mittiri_glm.pdf ·...

26
Rと一般化線形モデル入門 山梨県富士山科学研究所 安田 泰輔 2015/3/27 12:00-13:00 日本草地学会 若手R統計企画 (信州大学農学部) 謝辞:日本草地学会若手の会の皆様、発表の機会を頂き、 たいへんありがとうございます!

Upload: others

Post on 19-Jan-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

Rと一般化線形モデル入門

山梨県富士山科学研究所

安田 泰輔

2015/3/27 12:00-13:00 日本草地学会 若手R統計企画 (信州大学農学部)

謝辞:日本草地学会若手の会の皆様、発表の機会を頂き、 たいへんありがとうございます!

Page 2: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

自己紹介

• 茨城大学・学生時代 – ベータ二項分布を用いた種の空間分布の解析

• 所属:山梨県富士山科学研究所

• 最近の研究テーマ – 近接リモートセンシングによる半自然草地のモニタリング手法開発

– 富士山の長期的、広域的な森林限界動態

– 湖畔における外来植物アレチウリの分布推定と駆除活動

Page 3: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

趣旨説明

• Rに触れてみよう!、GLMをやってみよう!ざっくばらんに!(ということだ

と思う)

文章は若手の会作成

Page 4: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

R(主にwikipediaより)

• オープンソース・フリーソフト • R Development Core Team(NZ)がメンテナンス • 統計解析向けのプログラミング言語 • 統計解析、画像処理、音声合成、GISなど各種多様なパッケージが利用

できる(6000以上!だそうです)。もちろんフリー。

• Rをダウンロードしたとき、全部は入っていない • ので、必要なパッケージ(様々な関数群)をダウンロードして使う。 E.g. 画像処理がしたい!→調べる、聞く

> install.packages(“raster”) > library(raster) で使えるようになる。

Page 5: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

• グラフィック、他のソフトとの連携など、統計以外のパッケージも充実

• ファイル操作もできます。

• 日々、拡張と強化が行われているので、情報交換がとても大事

( )

( )

( )

Page 6: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

テキストベースに慣れよう!

• “何度もボタンを押す” → “テキストで記述” – 処理内容を記録できる、何度も使える、一括処理できる、などの利点がある。

Notepad++

Page 7: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

今回使用するソフト:R-Studio

ここにコードを記載

Rの実行 図やパッケージ情報等

変数情報等

少しやってみます。

Page 8: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

RでGLM

• 一般化線形モデル Generalized Linear Model

• フィールド研究ではよく使われる方法の1つ

• 良書、参考HPは非常にたくさんあります。 – データ解析のための統計モデリング入門(久保拓弥、岩波書店)

– 講義のーと(データ解析のための統計モデリング) http://eprints.lib.hokudai.ac.jp/dspace/handle/2115/49477

– 名古屋大学大学院生命環境農学研究科 森林生態生理学研究分野 RでGLMをやってみよう

http://www.agr.nagoya-u.ac.jp/~seitai/document/R2009/t090614glmIntro.pdf

などなど

Page 9: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

他の手法との関連

• これらはGLMの特殊なバージョン

• 二項分布やポアソン分布、ガンマ分布も使える。

• 説明変数には、連続変数、カテゴリ変数、両方が取れる。

分析名 応答変数(Y) 説明変数(X)

t検定(Welchでない場合) 量的変数1つ 2分変数1つ

一元配置分散分析 量的変数1つ カテゴリ変数1つ

多元配置分散分析 量的変数1つ カテゴリ変数複数

回帰分析 量的変数1つ 量的変数1つ

重回帰分析 量的変数1つ 量的変数複数(カテゴリ変数はダミー変数化

共分散分析 量的変数1つ ・・・

ロジスティック回帰分析 2分変数1つ 2分変数、カテゴリ変数、量的変数複数

正準相関分析 量的変数複数 量的変数複数

中澤(2004) “Rによる統計解析の基礎” を改編・引用

Page 10: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

内容

ロジスティック回帰を中心に、

1. プロット

2. モデルの組み立て、パラメータ推定

3. AICによるモデル選択

を行ってみる。 *数式は重要ですが、ここでは極力使いません。

Page 11: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

問題設定とデータセットの作成

• 土壌水分条件に対する植物種Sの種子生残率を知りたい – 水分条件が異なる場所12か所を選ぶ

– 各地点で種Sの種子を25~50個採取し、生残or死んでいるかを調査した。

1

12

2

・・・

乾燥

湿潤

種子サンプリング

生きている:1

死んでいる:0

x:土壌含水率 n:各地点で調査した総種子数 y:生残種子数

Page 12: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

1.プロット

• 説明変数に伴って変化する確率分布の期待値(赤)を推定。

“この確率分布はなにか?” “説明変数と期待値はどのような関係か?”

Page 13: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

2.モデル組み立て準備

• 生残率は 生残種子数yi/総種子数ni (i = 1,2,…,12)。

• 生残種子数yiは0,1,・・・,nの値を取り得る。

• 生残率(n個中y個当たり)は、二項分布に従うと仮定。

• 二項分布Binomial(pi, ni)の期待値piは説明変数xiとなんらかの関係を持っていると仮定。

• これらの条件・仮定から、モデルを組み立てる。

Page 14: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

モデル組み立て

1. 確率分布: yi ~ Binomial(pi, ni) i=1,2,…,12

2. リンク関数: logit(pi) = log(pi/(1-pi))=線形予測子

pi=1/(1+exp(-(線形予測子)))、 e.g. exp(3) = e^3

3. 線形予測子:β0 + β1*xi

• データの性質に合わせて、確率分布を仮定する。

• 説明変数は、連続変数(今回)、カテゴリ変数、その両方が使える。

Page 15: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

いろんなデータ型へも適用可能

• GLMを行うときは

応答変数の確率分布、リンク関数、線形予測子

を指定する。

• 確率分布(指数型分布族 )とリンク関数(デフォルト)>?glm → family

データ 確率分布 リンク関数 (デフォルト)

0,1,…,n(離散、上下限あり) 二項分布 binomial logit

0,1,…,∞(離散、上限なし) ポアソン分布 poisson log

0 ~ ∞(連続、上限なし)

ガンマ分布 Gamma Inverse (or log)

-∞ ~ ∞(連続、上下限なし)

正規分布 gaussian identity (そのまま)

Page 16: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

RでGLM実行(パラメータ推定)

> fit<-glm(

cbind(y,n-y)~x, #cbindで成功数・失敗数を指定

family=binomial(link=“logit”),

data=data_set

)

注意

cbind(y,n-y)~x の右辺は “切片+傾き*x” の意味

Page 17: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

結果

Residual deviance/df = 8.897/10=0.8897

logit(pi) =線形予測子 pi=1/(1+exp(-(線形予測子)))

Page 18: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

結果の図示

β0=-10.7, β1=0.25

β0^=-9.53(s.e. 0.84), β1^=0.22(s.e. 0.02)

Page 19: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

3.まだ報告書は終わらない・・・AICによるモデル選択

β0=-10.7, β1=0.25

線形予測子 β0+β1*xi

線形予測子 β0

β0^=-9.53(s.e. 0.84), β1^=0.22(s.e. 0.02)

β1=0(傾き=0)と違うのか? 有意差検定をする

↓観方を変える

どのモデルが“良い”のか? AICでモデルを選択する。

Page 20: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

AIC

• 赤池情報量規準 Akaike’s Information Criterion

AIC = -2lnL + 2k (lnL: 最大対数尤度、k:パラメータ数)

• 同じデータのもとで、2つ以上のモデルのAICを比較し、AICが最小となるモデルを採用する。(山村光司さんのHP http://cse.niaes.affrc.go.jp/yamamura/)

• 相対的にAICが低いモデルが“良い”モデルとされる。

Page 21: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

再:RでGLM実行(パラメータ推定)

> fit<-glm(

cbind(y,n-y)~1, #cbindで成功数・失敗数を指定

family=binomial(link=“logit”),

data=data_set

)

注意

cbind(y,n-y)~1 の右辺は “切片だけ” の意味

Page 22: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

“切片だけ”のモデル

Page 23: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

AICの比較

β0=-10.7, β1=0.25

fit0 β0^=-0.29(s.e. 0.09)

AICによるモデル選択の結果、 モデル”fit”が選ばれた。

fit β0^=-9.53(s.e. 0.84), β1^=0.22(s.e. 0.02)

Page 24: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

Odds(オッズ)

#選択されたモデルfitに推定値を入れると…

logit(pi) = -9.5294+0.2234xi

log(pi/(1-pi)) = -9.5294+0.2234xi

pi/(1-pi) = exp(-9.5294)exp(0.2234xi)

pi/(1-pi) ∝ exp(0.2234xi) 左辺は“オッズ”

#土壌含水率xiが“1単位”増加したとき、種子生残率のオッズは

pi/(1-pi) ∝ exp(0.2234(xi+1))

∝ exp(0.2234xi)exp(0.2234)

exp(0.2234)=1.2503倍,増加する。

講義のーと(久保 2008)http://eprints.lib.hokudai.ac.jp/dspace/bitstream/2115/49477/5/kubostat2008d.pdf

Page 25: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

まとめ

• ロジスティック回帰で、GLMの一連の流れを示した。 – プロット

– モデルの組み立て、パラメータ推定

– AICによるモデル選択

• 今回触れていないが、尤度、過大分散への対処、offset項の使い方も大事。

• 研究計画段階で、どのようなデータが取れそうか?(仮説)、その解析方法は? といったところまで計画し、予習。

• 調査デザイン(調査区の選定、枠の個数・配置などなど)はとても重要です!

Page 26: Rと一般化線形モデル入門 - jsgs.chobi.netjsgs.chobi.net/wakate/Mittiri_GLM.pdf · カテゴリ変数複数 回帰分析. 量的変数1つ. 量的変数1つ 重回帰分析

ご清聴、ありがとうございます。