SlideShare a Scribd company logo
1 of 2
2011 年 5 月作成



lm 関数を使わない回帰分析と梃子比・Cook の距離
○ テストデータ作成

誤差項に自由度 10 の t 分布乱数を用いた回帰モデルに従うデータを作成。n=1000。
rm(list=ls(all=TRUE))     # 作業領域のクリア
setwd("d:/TSR2/sim")      # データファイルなどを置く作業ディレクトリ
の指定
library(sn)               # for rmst (t 分布に従う乱数を発生させる
関数)
set.seed(24)              # 乱数を固定するためのシード設定
a1 <- 2             # 回帰パラメータの傾きを指定
b1 <- 5             # 回帰パラメータ切片
x <- runif(1000, min=1, max=10) # 説明変数は一様乱数
y <- a1 * x + b1 + rt(1000, df= 10)
       # 被説明変数は回帰モデルに従い自由度 10 の t 分布乱数残差を持つ

○ lm 関数を使わない回帰分析と梃子比

 x の先頭に要素が全て 1 の列を加えて行列計算を行う。  逆行列が計算できれば回帰分析
は可能。hat 行列(ここでは hat1)の対角成分が梃子比となるが、hat 行列は説明変数の
みから算出されており、梃子比は単に説明変数の平均からの近さで決まる。
x1 <- cbind(rep(1, 1000), x)     # x の先頭に全て 1 の列を加える
hat1 <- x1 %*% solve((t(x1) %*% x1)) %*% t(x1) # hat 行列の計算
teko<- diag(hat1)
(bt1 <- solve(t(x1) %*% x1) %*% t(x1) %*% y) # 回帰係数算出
res1 <- y - hat1 %*% y                         # 残差
summary(res1)               # 残差の四分位値を含む基本統計量算出
s2 <- sum(res1^2) / (nrow(x1) - ncol(x1)) # 誤差項の不偏分散推定量
sqrt(s2)                                  # 誤差項の標準偏差
(se1 <- (diag(s2*solve(t(x1)%*%x1)))^0.5) # 回帰パラメータの標準誤差

##### t 検定
(t1 <- bt1 / se1)                                 # t値
2 * pt(-abs(t1), nrow(x1) - ncol(x1))     # 両側 t 検定の p 値
(R2 <- 1- sum(res1^2)/(sum((y-mean(y))^2)))       # 決定係数
(R2r<- 1- sum(res1^2) / (sum((y-mean(y))^2))*(nrow(x1)-1)
   / (nrow(x1)-ncol(x1)))          # 自由度調整済み決定係数
##### F 検定 (切片以外がゼロであるを検定する F 統計値の計算)
(f1 <-R2/(1-R2)*(nrow(x1)-ncol(x1))/(ncol(x1)-1))
1-pf(f1,ncol(x1)-1,nrow(x1)-ncol(x1))     # F 検定の p 値の計算

summary(lm(y~x))            # lm 関数の結果と比較してみる
flg<- rep(1, 1000)
flg[which(teko>boxplot(teko)$stats[3])] <- 2   # 中位数
flg[which(teko>boxplot(teko)$stats[4])] <- 3   # 四分位値
flg[which(teko== boxplot(teko)$stats[5])] <- 4 # 最大値のデータ
plot(x, y, col=c("black", "yellow", "orange", "red")[flg], pch=20)
       abline(lm1, col="blue", lwd=2)    # 回帰線入り
○ Cook の距離
 Cook の距離は全てのデータを用いた際と、        1つのデータを除いた場合の回帰式による予
測値の差に関する距離尺度。        Cook の距離が大きいデータは、回帰式に与える影響が大きく、
異常値である可能性がある。
 一般に、Cook の距離が 0.5 以上であれば大きいとされる。
 R では関数 cooks.distance を用いて算出することができる。


 cd1 <- cooks.distance(lm1)   # Cook の距離算出
 flg2<- rep(1, 1000)          # 色分け用のフラグ
 flg2[which(cd1 >= 0.0003)]   <- 2 # 適当に大きな数字に色をつける
 flg2[which(cd1 >= 0.001)]     <- 3

 plot(x, y, col=c("black","orange","red")[flg2], pch=20)
        abline(lm1, col="blue", lwd=2)   # 回帰線入り
    25




                                       25
    20




                                       20
y




                                   y
    15




                                       15
    10




                                       10
    5




                                       5




         2   4       6   8    10             2   4         6   8   10

                 x                                     x


         梃子比                                Cook の距離

More Related Content

What's hot

比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!takehikoihayashi
 
effectsパッケージを用いた一般化線形モデルの可視化
effectsパッケージを用いた一般化線形モデルの可視化effectsパッケージを用いた一般化線形モデルの可視化
effectsパッケージを用いた一般化線形モデルの可視化Yu Tamura
 
3次元のデータをグラフにする(Tokyo.R#17)
3次元のデータをグラフにする(Tokyo.R#17)3次元のデータをグラフにする(Tokyo.R#17)
3次元のデータをグラフにする(Tokyo.R#17)Takumi Tsutaya
 
R stan導入公開版
R stan導入公開版R stan導入公開版
R stan導入公開版考司 小杉
 
マルコフ連鎖モンテカルロ法と多重代入法
マルコフ連鎖モンテカルロ法と多重代入法マルコフ連鎖モンテカルロ法と多重代入法
マルコフ連鎖モンテカルロ法と多重代入法Koichiro Gibo
 
StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9考司 小杉
 
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章nocchi_airport
 
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法Ken'ichi Matsui
 
トピックモデルの基礎と応用
トピックモデルの基礎と応用トピックモデルの基礎と応用
トピックモデルの基礎と応用Tomonari Masada
 
【書きかけ】一般化線形モデルの流れ
【書きかけ】一般化線形モデルの流れ【書きかけ】一般化線形モデルの流れ
【書きかけ】一般化線形モデルの流れTomoshige Nakamura
 
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章Shushi Namba
 
因果推論を用いた 群衆移動の誘導における介入効果推定
因果推論を用いた 群衆移動の誘導における介入効果推定因果推論を用いた 群衆移動の誘導における介入効果推定
因果推論を用いた 群衆移動の誘導における介入効果推定Koh Takeuchi
 
Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Takuma Yagi
 
臨床家が知っておくべき臨床疫学・統計
臨床家が知っておくべき臨床疫学・統計臨床家が知っておくべき臨床疫学・統計
臨床家が知っておくべき臨床疫学・統計Yasuaki Sagara
 
Yamadai.Rデモンストレーションセッション
Yamadai.RデモンストレーションセッションYamadai.Rデモンストレーションセッション
Yamadai.Rデモンストレーションセッション考司 小杉
 
ベイズファクターとモデル選択
ベイズファクターとモデル選択ベイズファクターとモデル選択
ベイズファクターとモデル選択kazutantan
 

What's hot (20)

比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!比例ハザードモデルはとってもtricky!
比例ハザードモデルはとってもtricky!
 
effectsパッケージを用いた一般化線形モデルの可視化
effectsパッケージを用いた一般化線形モデルの可視化effectsパッケージを用いた一般化線形モデルの可視化
effectsパッケージを用いた一般化線形モデルの可視化
 
3次元のデータをグラフにする(Tokyo.R#17)
3次元のデータをグラフにする(Tokyo.R#17)3次元のデータをグラフにする(Tokyo.R#17)
3次元のデータをグラフにする(Tokyo.R#17)
 
R stan導入公開版
R stan導入公開版R stan導入公開版
R stan導入公開版
 
マルコフ連鎖モンテカルロ法と多重代入法
マルコフ連鎖モンテカルロ法と多重代入法マルコフ連鎖モンテカルロ法と多重代入法
マルコフ連鎖モンテカルロ法と多重代入法
 
StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9StanとRでベイズ統計モデリング読書会Ch.9
StanとRでベイズ統計モデリング読書会Ch.9
 
潜在クラス分析
潜在クラス分析潜在クラス分析
潜在クラス分析
 
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
StanとRでベイズ統計モデリングに関する読書会(Osaka.stan) 第四章
 
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
基礎からのベイズ統計学 輪読会資料 第4章 メトロポリス・ヘイスティングス法
 
トピックモデルの基礎と応用
トピックモデルの基礎と応用トピックモデルの基礎と応用
トピックモデルの基礎と応用
 
【書きかけ】一般化線形モデルの流れ
【書きかけ】一般化線形モデルの流れ【書きかけ】一般化線形モデルの流れ
【書きかけ】一般化線形モデルの流れ
 
階層ベイズとWAIC
階層ベイズとWAIC階層ベイズとWAIC
階層ベイズとWAIC
 
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
StanとRでベイズ統計モデリング読書会(Osaka.stan) 第6章
 
1 7.Type II ANOVA
1 7.Type II ANOVA1 7.Type II ANOVA
1 7.Type II ANOVA
 
因果推論を用いた 群衆移動の誘導における介入効果推定
因果推論を用いた 群衆移動の誘導における介入効果推定因果推論を用いた 群衆移動の誘導における介入効果推定
因果推論を用いた 群衆移動の誘導における介入効果推定
 
Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1Probabilistic Graphical Models 輪読会 #1
Probabilistic Graphical Models 輪読会 #1
 
Stan超初心者入門
Stan超初心者入門Stan超初心者入門
Stan超初心者入門
 
臨床家が知っておくべき臨床疫学・統計
臨床家が知っておくべき臨床疫学・統計臨床家が知っておくべき臨床疫学・統計
臨床家が知っておくべき臨床疫学・統計
 
Yamadai.Rデモンストレーションセッション
Yamadai.RデモンストレーションセッションYamadai.Rデモンストレーションセッション
Yamadai.Rデモンストレーションセッション
 
ベイズファクターとモデル選択
ベイズファクターとモデル選択ベイズファクターとモデル選択
ベイズファクターとモデル選択
 

Viewers also liked

Lap trinh web dong voi php my sql
Lap trinh web dong voi php my sqlLap trinh web dong voi php my sql
Lap trinh web dong voi php my sqlGiang Nguyễn
 
Rolas en El Mañanero.
Rolas en El Mañanero.Rolas en El Mañanero.
Rolas en El Mañanero.Brozo Xmiswebs
 
сайты по информ
сайты по информсайты по информ
сайты по информbukish
 
Diamonds oms
Diamonds omsDiamonds oms
Diamonds omsc_liberty
 
Powercam6 全球最好用的簡報與螢幕錄影軟體
Powercam6 全球最好用的簡報與螢幕錄影軟體Powercam6 全球最好用的簡報與螢幕錄影軟體
Powercam6 全球最好用的簡報與螢幕錄影軟體yunjuli
 
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54โปรโมชั่นทูยู
 
Despre cuvinte cheie
Despre cuvinte cheieDespre cuvinte cheie
Despre cuvinte cheieHoria Tel
 
Mieszkanie marzeń
Mieszkanie marzeńMieszkanie marzeń
Mieszkanie marzeńporanny24
 
Impacto de la inversión extranjera enfoque macroeconómico 2013
Impacto de la inversión extranjera enfoque macroeconómico 2013Impacto de la inversión extranjera enfoque macroeconómico 2013
Impacto de la inversión extranjera enfoque macroeconómico 2013Agencia Exportadora®
 
международные организации
международные организациимеждународные организации
международные организацииbukish
 

Viewers also liked (18)

Lap trinh web dong voi php my sql
Lap trinh web dong voi php my sqlLap trinh web dong voi php my sql
Lap trinh web dong voi php my sql
 
Ola k ace
Ola k aceOla k ace
Ola k ace
 
mayk7.odt
mayk7.odtmayk7.odt
mayk7.odt
 
Rolas en El Mañanero.
Rolas en El Mañanero.Rolas en El Mañanero.
Rolas en El Mañanero.
 
Trafico
TraficoTrafico
Trafico
 
сайты по информ
сайты по информсайты по информ
сайты по информ
 
Diamonds oms
Diamonds omsDiamonds oms
Diamonds oms
 
Evolucion Web
Evolucion WebEvolucion Web
Evolucion Web
 
22
2222
22
 
Powercam6 全球最好用的簡報與螢幕錄影軟體
Powercam6 全球最好用的簡報與螢幕錄影軟體Powercam6 全球最好用的簡報與螢幕錄影軟體
Powercam6 全球最好用的簡報與螢幕錄影軟體
 
j53jy.pdf
j53jy.pdfj53jy.pdf
j53jy.pdf
 
16 hoangnamhai
16 hoangnamhai16 hoangnamhai
16 hoangnamhai
 
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54
โบรชัวร์โปรโมชั่นโลตัส Hyper market รายปักษ์ วันที่ 28กพ.-14มีค.54
 
Despre cuvinte cheie
Despre cuvinte cheieDespre cuvinte cheie
Despre cuvinte cheie
 
Mieszkanie marzeń
Mieszkanie marzeńMieszkanie marzeń
Mieszkanie marzeń
 
Os xmldomphp
Os xmldomphpOs xmldomphp
Os xmldomphp
 
Impacto de la inversión extranjera enfoque macroeconómico 2013
Impacto de la inversión extranjera enfoque macroeconómico 2013Impacto de la inversión extranjera enfoque macroeconómico 2013
Impacto de la inversión extranjera enfoque macroeconómico 2013
 
международные организации
международные организациимеждународные организации
международные организации
 

Similar to Rによるlm関数を使わない回帰と梃子比・cookの距離

MMDs10.6-7
MMDs10.6-7MMDs10.6-7
MMDs10.6-7mfumi
 
Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理wada, kazumi
 
Knn発表資料(R)
Knn発表資料(R)Knn発表資料(R)
Knn発表資料(R)Sora Kubota
 
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and TechniquesLotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and TechniquesHiroaki Komine
 
OpenFOAMにおけるDEM計算の力モデルの解読
OpenFOAMにおけるDEM計算の力モデルの解読OpenFOAMにおけるDEM計算の力モデルの解読
OpenFOAMにおけるDEM計算の力モデルの解読takuyayamamoto1800
 
文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding
文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding
文献紹介:TSM: Temporal Shift Module for Efficient Video UnderstandingToru Tamaki
 
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータStanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータMiki Katsuragi
 
距離まとめられませんでした
距離まとめられませんでした距離まとめられませんでした
距離まとめられませんでしたHaruka Ozaki
 
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.42013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4Takeshi Sakaki
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化Miyoshi Yuya
 
はじめてのベイズ推定
はじめてのベイズ推定はじめてのベイズ推定
はじめてのベイズ推定Kenta Matsui
 
2012年1月20日
2012年1月20日2012年1月20日
2012年1月20日nukaemon
 
KETpic できれいな図を書こう
KETpic できれいな図を書こうKETpic できれいな図を書こう
KETpic できれいな図を書こうYoshitomo Akimoto
 
topology of musical data
topology of musical datatopology of musical data
topology of musical dataTatsuki SHIMIZU
 
20170923 excelユーザーのためのr入門
20170923 excelユーザーのためのr入門20170923 excelユーザーのためのr入門
20170923 excelユーザーのためのr入門Takashi Kitano
 
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...Toru Tamaki
 

Similar to Rによるlm関数を使わない回帰と梃子比・cookの距離 (20)

C07
C07C07
C07
 
C02
C02C02
C02
 
MMDs10.6-7
MMDs10.6-7MMDs10.6-7
MMDs10.6-7
 
Rによる繰り返しの並列処理
Rによる繰り返しの並列処理Rによる繰り返しの並列処理
Rによる繰り返しの並列処理
 
Knn発表資料(R)
Knn発表資料(R)Knn発表資料(R)
Knn発表資料(R)
 
R intro
R introR intro
R intro
 
Lotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and TechniquesLotus DEvCon 2000 - LotusScript Tips and Techniques
Lotus DEvCon 2000 - LotusScript Tips and Techniques
 
OpenFOAMにおけるDEM計算の力モデルの解読
OpenFOAMにおけるDEM計算の力モデルの解読OpenFOAMにおけるDEM計算の力モデルの解読
OpenFOAMにおけるDEM計算の力モデルの解読
 
文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding
文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding
文献紹介:TSM: Temporal Shift Module for Efficient Video Understanding
 
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータStanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
StanとRでベイズ統計モデリング 11章 離散値をとるパラメータ
 
距離まとめられませんでした
距離まとめられませんでした距離まとめられませんでした
距離まとめられませんでした
 
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.42013.12.26 prml勉強会 線形回帰モデル3.2~3.4
2013.12.26 prml勉強会 線形回帰モデル3.2~3.4
 
パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化パターン認識第9章 学習ベクトル量子化
パターン認識第9章 学習ベクトル量子化
 
はじめてのベイズ推定
はじめてのベイズ推定はじめてのベイズ推定
はじめてのベイズ推定
 
2012年1月20日
2012年1月20日2012年1月20日
2012年1月20日
 
Prml sec6
Prml sec6Prml sec6
Prml sec6
 
KETpic できれいな図を書こう
KETpic できれいな図を書こうKETpic できれいな図を書こう
KETpic できれいな図を書こう
 
topology of musical data
topology of musical datatopology of musical data
topology of musical data
 
20170923 excelユーザーのためのr入門
20170923 excelユーザーのためのr入門20170923 excelユーザーのためのr入門
20170923 excelユーザーのためのr入門
 
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
文献紹介:SegFormer: Simple and Efficient Design for Semantic Segmentation with Tr...
 

More from wada, kazumi

2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用wada, kazumi
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017wada, kazumi
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017wada, kazumi
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017wada, kazumi
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017wada, kazumi
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用wada, kazumi
 
Rデモ03_データ分析編2016
Rデモ03_データ分析編2016Rデモ03_データ分析編2016
Rデモ03_データ分析編2016wada, kazumi
 
Rデモ02_入出力編2016
Rデモ02_入出力編2016Rデモ02_入出力編2016
Rデモ02_入出力編2016wada, kazumi
 
Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016wada, kazumi
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016wada, kazumi
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016wada, kazumi
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016wada, kazumi
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slidesharewada, kazumi
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編wada, kazumi
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモwada, kazumi
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編wada, kazumi
 
Rプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモRプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモwada, kazumi
 
Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモwada, kazumi
 
Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩wada, kazumi
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理wada, kazumi
 

More from wada, kazumi (20)

2018Rユーザ会用
2018Rユーザ会用2018Rユーザ会用
2018Rユーザ会用
 
Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017Ⅳ. 可視化事例集 2017
Ⅳ. 可視化事例集 2017
 
Ⅲ. 資料編 2017
Ⅲ. 資料編 2017Ⅲ. 資料編 2017
Ⅲ. 資料編 2017
 
Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017Ⅱ. データ分析編 2017
Ⅱ. データ分析編 2017
 
Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017Ⅰ. Rの基礎 2017
Ⅰ. Rの基礎 2017
 
2017Rユーザ会用
2017Rユーザ会用2017Rユーザ会用
2017Rユーザ会用
 
Rデモ03_データ分析編2016
Rデモ03_データ分析編2016Rデモ03_データ分析編2016
Rデモ03_データ分析編2016
 
Rデモ02_入出力編2016
Rデモ02_入出力編2016Rデモ02_入出力編2016
Rデモ02_入出力編2016
 
Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016Rデモ01_はじめの一歩2016
Rデモ01_はじめの一歩2016
 
統計環境R_データ分析編2016
統計環境R_データ分析編2016統計環境R_データ分析編2016
統計環境R_データ分析編2016
 
統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016統計環境R_はじめの一歩2016
統計環境R_はじめの一歩2016
 
統計環境R_データ入出力編2016
統計環境R_データ入出力編2016統計環境R_データ入出力編2016
統計環境R_データ入出力編2016
 
自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare自然科学の統計学2.2 slideshare
自然科学の統計学2.2 slideshare
 
Rプログラミング03 データ分析編
Rプログラミング03 データ分析編Rプログラミング03 データ分析編
Rプログラミング03 データ分析編
 
Rプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモRプログラミング03 「データ分析編」デモ
Rプログラミング03 「データ分析編」デモ
 
Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編Rプログラミング02 データ入出力編
Rプログラミング02 データ入出力編
 
Rプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモRプログラミング02 「データ入出力編」デモ
Rプログラミング02 「データ入出力編」デモ
 
Rプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモRプログラミング01 「はじめの一歩」 演習デモ
Rプログラミング01 「はじめの一歩」 演習デモ
 
Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩Rプログラミング01 はじめの一歩
Rプログラミング01 はじめの一歩
 
Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理Rでのtry関数によるエラー処理
Rでのtry関数によるエラー処理
 

Rによるlm関数を使わない回帰と梃子比・cookの距離

  • 1. 2011 年 5 月作成 lm 関数を使わない回帰分析と梃子比・Cook の距離 ○ テストデータ作成 誤差項に自由度 10 の t 分布乱数を用いた回帰モデルに従うデータを作成。n=1000。 rm(list=ls(all=TRUE)) # 作業領域のクリア setwd("d:/TSR2/sim") # データファイルなどを置く作業ディレクトリ の指定 library(sn) # for rmst (t 分布に従う乱数を発生させる 関数) set.seed(24) # 乱数を固定するためのシード設定 a1 <- 2 # 回帰パラメータの傾きを指定 b1 <- 5 # 回帰パラメータ切片 x <- runif(1000, min=1, max=10) # 説明変数は一様乱数 y <- a1 * x + b1 + rt(1000, df= 10) # 被説明変数は回帰モデルに従い自由度 10 の t 分布乱数残差を持つ ○ lm 関数を使わない回帰分析と梃子比 x の先頭に要素が全て 1 の列を加えて行列計算を行う。 逆行列が計算できれば回帰分析 は可能。hat 行列(ここでは hat1)の対角成分が梃子比となるが、hat 行列は説明変数の みから算出されており、梃子比は単に説明変数の平均からの近さで決まる。 x1 <- cbind(rep(1, 1000), x) # x の先頭に全て 1 の列を加える hat1 <- x1 %*% solve((t(x1) %*% x1)) %*% t(x1) # hat 行列の計算 teko<- diag(hat1) (bt1 <- solve(t(x1) %*% x1) %*% t(x1) %*% y) # 回帰係数算出 res1 <- y - hat1 %*% y # 残差 summary(res1) # 残差の四分位値を含む基本統計量算出 s2 <- sum(res1^2) / (nrow(x1) - ncol(x1)) # 誤差項の不偏分散推定量 sqrt(s2) # 誤差項の標準偏差 (se1 <- (diag(s2*solve(t(x1)%*%x1)))^0.5) # 回帰パラメータの標準誤差 ##### t 検定 (t1 <- bt1 / se1) # t値 2 * pt(-abs(t1), nrow(x1) - ncol(x1)) # 両側 t 検定の p 値 (R2 <- 1- sum(res1^2)/(sum((y-mean(y))^2))) # 決定係数 (R2r<- 1- sum(res1^2) / (sum((y-mean(y))^2))*(nrow(x1)-1) / (nrow(x1)-ncol(x1))) # 自由度調整済み決定係数 ##### F 検定 (切片以外がゼロであるを検定する F 統計値の計算) (f1 <-R2/(1-R2)*(nrow(x1)-ncol(x1))/(ncol(x1)-1)) 1-pf(f1,ncol(x1)-1,nrow(x1)-ncol(x1)) # F 検定の p 値の計算 summary(lm(y~x)) # lm 関数の結果と比較してみる flg<- rep(1, 1000) flg[which(teko>boxplot(teko)$stats[3])] <- 2 # 中位数 flg[which(teko>boxplot(teko)$stats[4])] <- 3 # 四分位値 flg[which(teko== boxplot(teko)$stats[5])] <- 4 # 最大値のデータ plot(x, y, col=c("black", "yellow", "orange", "red")[flg], pch=20) abline(lm1, col="blue", lwd=2) # 回帰線入り
  • 2. ○ Cook の距離 Cook の距離は全てのデータを用いた際と、 1つのデータを除いた場合の回帰式による予 測値の差に関する距離尺度。 Cook の距離が大きいデータは、回帰式に与える影響が大きく、 異常値である可能性がある。 一般に、Cook の距離が 0.5 以上であれば大きいとされる。 R では関数 cooks.distance を用いて算出することができる。 cd1 <- cooks.distance(lm1) # Cook の距離算出 flg2<- rep(1, 1000) # 色分け用のフラグ flg2[which(cd1 >= 0.0003)] <- 2 # 適当に大きな数字に色をつける flg2[which(cd1 >= 0.001)] <- 3 plot(x, y, col=c("black","orange","red")[flg2], pch=20) abline(lm1, col="blue", lwd=2) # 回帰線入り 25 25 20 20 y y 15 15 10 10 5 5 2 4 6 8 10 2 4 6 8 10 x x 梃子比 Cook の距離