「まえがき」から引用する。
一般化線形モデル(Generalized Linear Models, 略して GLM)は,最近,幅広い分野で使われるようになってきた.(中略) GLM について英語では少なからぬ本が出版されている.(中略)しかし,実際にデータの分析に GLM を使ううえでは, とくに日本語ではカバーされていない部分も多い.本書はその空白を埋めることを意図している.(後略)
要再読である。まだまだ読み込むまでには至っていない。
目次は次のとおりである。
第1章 一般化線形モデルとその構成要素 1.1 一般化線形モデルの3つの構成要素 1.2 これまでの方法との関係 1.3 確率モデルと一般化線形モデル 第2章 最尤法と一般化線形モデル 2.1 確率分布と一般化線形モデル 2.2 尤度と最尤法 2.3 一般化線形モデルとグラフ 2.4 Rのglm関数 2.5 一般化線形モデルと不等分散 第3章 離散的データを目的変数とする一般化線形モデル 3.1 割合を目的変数とする分析 3.2 ポアソン回帰 3.3 分割表 第4章 離散的データと過分散 4.1 過分散が起こるとき 4.2 過分散がわかるときとわからないとき 4.3 対策 4.4 カウントデータと過分散:ポアソン分布 4.5 ゼロ過剰 4.6 分割表と過分散 第5章 擬似尤度 5.1 擬似尤度とは 5.2 glmにおける擬似尤度 5.3 quasiで新しいリンクや新しい誤差構造を作る 5.4 擬似尤度の拡張 第6章 ランダム効果の変数と混合モデル 6.1 ランダム効果と固定効果 6.2 ランダム効果の変数と尤度 6.3 Rにおける一般化線形混合モデル 6.4 マルチレベルモデル 6.5 識別可能性 6.6 マルチレベルモデルと階層ベイズ法 第7章 交互作用 7.1 交互作用とは 7.2 説明変数が名義変数2つの場合の交互作用―分散分析 7.3 一般化線形モデルでの交互作用の扱い方 7.4 分散分析と一般化線形モデルでの交互作用の扱い方 7.5 高次の交互作用 7.6 交互作用項だけを説明変数にする 7.7 交互作用と主効果 7.8 交互作用の項で表現できるもの 第8章 パラメトリック・ブートストラップ 8.1 パラメトリック・ブートストラップとは 8.2 glmとパラメトリック・ブートストラップ 8.3 glm以外の場合のパラメトリック・ブートストラップ 第9章 新しい誤差構造とリンク関数など 9.1 新しい誤差構造と新しいリンク関数 9.2 目的変数が多変数化された一般化線形モデル 9.3 その他一般化線形モデルと関係が深い統計モデル 付録A.1 確率分布 付録A.2 最尤法の説明 参考文献 索引
p.19 では目的変数 y1 と説明変数 x1, x2 を使う。たとえば、x1 は次のとおりである。
> x1
[1] 6.5 3.8 3.4 2.4 3.0 5.5 2.4 6.6
では、このような x1 をどのように作ればいいのだろうか。一例は次のとおりである。
> x1<-c(6.5,3.8,3.4,2.4,3.0,5.5,2.4,6.6)
[1] 6.5 3.8 3.4 2.4 3.0 5.5 2.4 6.6
p.20 以降ではデータフレームが活躍する。p.21 では次のようにデータフレームが定義されている。
> data_gp01
x_1 x_2 y_1
1 6.5 3.8 8
2 3.8 4.9 5
3 3.4 1.0 2
4 2.4 1.8 0
5 3.0 4.6 1
6 5.5 4.8 11
7 2.4 3.8 4
8 6.6 2.7 9
これを定義するには次のようにする。ただし、最初の2行だけである。
> data_gp01<-data.frame(x_1=c(6.5,3.8),x_2=c(3.7,4.9),y_1=c(8,5))
> data_gp01
x_1 x_2 y_1
1 6.5 3.7 8
2 3.8 4.9 5
最初から x_1, x_2, y_1 が定義されていればつぎでもいい。
> data_gp01<-(data.frame(x_1,x_2,y_1))
数値や文字列でなく名義変数扱いするには次のようにする。x_2 のデータを参照。
> data_gp01<-data.frame(x_1=c(6.5,3.8),x_2=as.factor(c("a","b")),y_1=c(8,5))
> data_gp01
x_1 x_2 y_1
1 6.5 a 8
2 3.8 b 5
次のような命令が p.58 にある。
< plot(x1{\_}1,x2{\_}1,pch=ifelse(y1{\_}1==1,19,21))
私の環境(Windows 11, R Version 4.41)では、次のエラーが起きる。
< plot(x1{\_}1,x2{\_}1,pch=ifelse(y1{\_}1==1,19,21))
エラー: 予想外の '{' です ( "plot(x1{"
次のように書けばエラーは生じない。
< plot(x1_1,x2_1,pch=ifelse(y1_1==1,19,21))
p.59 で separation.detection が使われているが、私の環境ではエラーが出る。
> separation.detection(res2_12.s)
separation.detection(res2_12.s) でエラー: 関数 "separation.detection" を見つけることができませんでした
これは、パッケージ brglm をインストールしていないからだろう。ではインストールしよう。 まず、RGui の「パッケージ」から「パッケージの読み込み...」を選ぶ。一覧が出るが、 この中にはない。「パッケージのインストール...」を選ぶと、全世界の Secure CRAN Mirrors が出てくる。 日本(Japan)は Yonezawa (山形大学)のものしかないのでこれを選ぶ。一覧が出てくるので、brglm を選ぶ(brglm2 というのもあるが違いがわからない)。 これを選ぶとダウンロードが完了するが、これだけではまだインストールできない。 そこでもう一度 RGui の「パッケージ」から「パッケージの読み込み...」を選び、一覧に brglm があることを確認して OK をクリックする。 R Console にはいろいろ出てくる。なかにはこんな文面があった。
'brglm' will gradually be superseded by the 'brglm2' R package (https://cran.r-project.org/package=brglm2), which provides utilities for mean and median bias reduction for all GLMs. Methods for the detection of separation and infinite estimates in binomial-response models are provided by the 'detectseparation' R package (https://cran.r-project.org/package=detectseparation).
そうなのか。まあいい。brglm のままやってみよう。
> separation.detection(res2_12.s)
(途中省略)
警告メッセージ: separation.detection(res2_12.s) で: 'separation.detection' will be removed from 'brglm' at version 0.8. Comprehensive methods for the detection of infinite estimates in binomial-response models are provided by the 'detectseparation' R package (https://cran.r-project.org/package=detectseparation).
ということだ。つまり、separation.detection は brglm のバージョン 0.8 で削除されたので、 かわりに detectseparation パッケージを使うように、という意味だろう。あとでやってみよう。
1. カテゴリカルデータ解析 2. 多次元データ解析法 3. ベイズ統計データ解析 4. ブートストラップ入門 5. パターン認識 6. マシンラーニング 7. 地理空間データ分析 8. ネットワーク分析 9. 樹木構造接近法 10. 一般化線形モデル 11. デジタル画像処理 12. 統計データの視覚化 13. マーケティングモデル 14. 計量政治分析 15.経済データ分析(続刊) 16.金融時系列解析(続刊) 17. 社会調査データ解析 18.生物資源解析(仮)(続刊) 19. 経営と信用リスクのデータ科学 20. シミュレーションで理解する回帰分析
書名 | R で学ぶデータサイエンス 10 一般化線形モデル |
著者 | 粕谷英一 |
発行日 | 2012 年 7 月 15 日(初版 1 刷) |
発行元 | 共立出版 |
定価 | 3500 円(税別) |
サイズ | B5 判 |
ISBN | 978-4-320-11014-4 |
備考 | 越谷市立図書館で借りて読む |
NDC |
まりんきょ学問所 > コンピュータの部屋 > 統計活用術 > 統計、時系列の本 > 粕谷英一:R で学ぶデータサイエンス 10 一般化線形モデル