線形回帰分析 - kurume u...confint(lm(x˜z)) アウトプット 2.5 % 97.5 % (intercept) -0.069...
Post on 25-Sep-2020
3 Views
Preview:
TRANSCRIPT
線形回帰分析
久留米大学バイオ統計センター第1回公開セミナー
川口淳
kawaguchi atsushi@kurume-u.ac.jp
2005年 7月 2日
線形回帰分析 – p.1/81
アウトライン
2.1 線形回帰モデル
2.2 傾きと切片に関する推測
2.2.3回帰直線全体に関する推測
2.3 出力値からの入力値の推定
応用例 薬物用量とAUC
4.4 量的実験要因
線形回帰分析 – p.2/81
線形回帰モデル
反応変数Xを入力変数Zに関連付けるために仮定された統計モデル
X = α∗ + βZ + e
ただし,
α∗ : Z = 0でのXの期待値 (直線の切片)
β : Zの単位変化あたりのXの平均変化 (直線の傾き)
e : 平均 0,分散 σ2の正規分布に従う確率変数
線形回帰分析 – p.3/81
表2.1
Z X
1 0.045
2 0.114
4 0.215
6 0.346
7 0.41
8 0.52
10 0.67
15 0.942
Z : 溶液に溶解したアンチモン
のマイクログラム数
X : Beckmannの分光光度計
の示度
線形回帰分析 – p.4/81
Rコード (データプロット)
データの読み込み.� �z<-c(1, 2, 4, 6, 7, 8, 10, 15)
x<-c(0.045, 0.114, 0.215, 0.346,
0.410, 0.520, 0.670, 0.942)� �横軸 z,縦軸 xの二次元プロット.� �plot(z,x)
� �
線形回帰分析 – p.5/81
データプロット
2 4 6 8 10 12 14
0.2
0.4
0.6
0.8
z
x
線形回帰分析 – p.6/81
最小二乗推定量
n組の観測値 (Z1, X1), . . . , (Zn, Xn)
S2 =n∑
i=1
(Xi − α∗ − βZi)2
を最小にするような a∗,bは次のように与えられる.
b =
∑
(Zi − Z)(Xi − X)∑
(Zi − Z)2
a∗ = X − bZ
線形回帰分析 – p.7/81
Rコード (最小二乗推定量)
組み込み関数を使用� �lm(x˜z)
� �アウトプット� �Call:
lm(formula = x ˜ z)
Coefficients:
(Intercept) z
-0.02777 0.06574� �
線形回帰分析 – p.8/81
SASコード (最小二乗推定量)� �data beckmann;
input z x @@;
datalines;
1 0.045 2 0.114 4 0.215 6 0.346
7 0.410 8 0.520 10 0.670 15 0.942
run;
proc reg data=beckmann;
model x=z ;
run;� �
線形回帰分析 – p.9/81
SAS結果 (最小二乗推定量)
SASアウトプットの一番下の表
線形回帰分析 – p.10/81
同値な表現
統計モデルを
X = α + β(Z − Z) + e
と表したとき,αと βの最小二乗推定量は
a = X, b =
∑
(Zi − Z)(Xi − X)∑
(Zi − Z)2
回帰直線はZとXの平均を通る.
aと bは無相関.
線形回帰分析 – p.11/81
共分散と相関係数
ZとXの共分散の推定量 sZX
sZX =
∑
(Zi − Z)(Xi − X)
n − 1⇒ b =
sZX
sX
ZとXの相関係数の推定量 r (−1 ≤ r ≤ 1)
r =sZX
sZsX⇒ b = r
sX
sZ
ただし,
sZ = 1n−1
∑
(Zi − Z)2,sX = 1n−1
∑
(Xi − X)2
線形回帰分析 – p.12/81
決定係数
R2 = S2
1−S2
2
S2
1
のことを決定係数と呼ぶ.ただし,
S21 =
∑
(Xi−X)2, S22 =
∑
[Xi−X−b(Zi−Z)]2
決定係数は,データの変動のうち求めた回帰直線が説明できる割合.
他方,
R2 = r2
が成立し,相関係数の二乗と決定係数は一致する.
線形回帰分析 – p.13/81
測定の信頼性
bは βU,TRZの推定となる.
ただし,
X = U +f, Z = T +e, eと fは無相関確率変数
RZ =σ2
T
σ2T + σ2
e
, RX =σ2
U
σ2U + σ2
f
βU,TはUとV の傾き
傾きの推定量はZの測定信頼度だけに依存する.
Zの信頼度が下がると,傾きは小さくなる.
線形回帰分析 – p.14/81
eの分散σ2の不偏推定量
誤差分散の推定量は以下のように与えられ,回帰パラメータの推測に用いられる.
s2 =
∑
(Xi − a∗ − bZi)2
n − 2
=
∑
(Xi − X − a∗ − b(Zi − Z))2
n − 2
不偏推定量 (E[s2] = σ2)にするためにn− 2で割る.
線形回帰分析 – p.15/81
傾きに関する推測 (1)
βの 100(1 − α)%信頼区間
b − tn−2,α/2se(b) ≤ β ≤ b + tn−2,α/2se(b)
ただし,
se(b) =s
√
∑
(Zi − Z)2
s :誤差分散の推定量の平方根
tν,p:自由度 νの t分布上側 p%点.
線形回帰分析 – p.16/81
傾きに関する推測 (2)
H0 : β = 0の検定 (有意水準α%)
t =b
se(b)(検定統計量)
t > tn−2,α/2 =⇒ H0 reject
(H0 reject ⇐⇒信頼区間が 0を含まない)
線形回帰分析 – p.17/81
傾きの検定と相関係数の検定
検定統計量 tに対し,
t =b
se(b)=
r√
n − 2√1 − r2
が成り立つ.
故に
H0 : β = 0 ⇐⇒ H0 : ρ = 0
ただし,ρは真の相関係数を表す.
線形回帰分析 – p.18/81
切片に関する推測 (1)
α∗の 100(1 − α)%信頼区間
a∗ − tn−2,α/2se(a∗) ≤ α∗ ≤ a∗ + tn−2,α/2se(a
∗)
ただし,
se(a∗) = s
√
1
n+
Z2
∑
(Zi − Z)2
線形回帰分析 – p.19/81
切片に関する推測 (2)
H0 : α∗ = 0の検定 (有意水準α%)
t =a∗
se(a∗)
t > tn−2,α/2 =⇒ H0 reject
線形回帰分析 – p.20/81
Rコード (傾き・切片に関する検定)
組み込み関数の使用� �coefficients(summary(lm(x˜z)))
� �アウトプット
Estimate Std.Error t value Pr(>|t|)
(Intercept) -0.028 0.017 -1.668 0.146
z 0.066 0.002 31.063 7.39e-08
切片は 0と有意に異なると言えないが,
傾きは 0と有意に異なる.
線形回帰分析 – p.21/81
Rコード (傾き・切片の信頼区間)
組み込み関数の使用� �confint(lm(x˜z))
� �アウトプット� �
2.5 % 97.5 %
(Intercept) -0.069 0.013
z 0.061 0.071� �切片の信頼区間は 0を含むが,
傾きのは 0を含まない.
線形回帰分析 – p.22/81
SASコード (傾き・切片の信頼区間)
オプション (CLB)をつける.� �proc reg data=beckmann;
model x=z / CLB;
run;� �結果
線形回帰分析 – p.23/81
原点を通ると仮定された直線 (1)
直線が原点を通ると仮定があるときの統計モデル
X = βZ + e
βの最小二乗推定量
β =
∑
ZiXi∑
Z2i
線形回帰分析 – p.24/81
原点を通ると仮定された直線 (2)
βの 100(1 − α)%信頼区間
β − tn−2,α/2se(β) ≤ β ≤ β + tn−2,α/2se(β)
ただし,
se(β) =v
√∑
Z2i
v =1
n − 1
∑
(Xi − βZi)2
線形回帰分析 – p.25/81
Rコード (原点を通る直線)
� �summary(lm(x˜z-1))
confint(lm(x˜z-1))� �アウトプット(一部分)
Estimate Std.Error t value Pr(>|t|)
z 0.063 0.001 49.11 <0.001
信頼区間� �
0.060 ≤ β ≤ 0.066� �
線形回帰分析 – p.26/81
SASコード (原点を通る直線)
オプション (NOINT)を加える.� �proc reg data=beckmann;
model x=z /NOINT CLB;
run;� �アウトプット(一部分)
線形回帰分析 – p.27/81
回帰直線に関する推測
あるZ = Z0に対するα∗ + βZ0の 100(1 − α)%信頼区間
a∗ + bZ0 ± tn−2,α/2 × s ×√
1
n+
(Z0 − Z)2
∑
(Zi − Z)2
Z0 = 0のときは,切片の信頼区間と一致する.
線形回帰分析 – p.28/81
回帰直線全体に関する推測 (考え方1)
Z = Zi (i = 1, 2, . . . )で同時に信頼区間を作りたい.
=⇒多重性の調整 (Bonferroniなど)
または,
P
{a∗ + bZ − (α∗ + βZ)}2
s2(
1n + (Z−Z)2
∑
(Zi−Z)2
) ≤ Mα, ∀Z
= 1−α
なるMαを求める.
線形回帰分析 – p.29/81
回帰直線全体に関する推測 (考え方2)
同値なことで,
P
max
Z
{a∗ + bZ − (α∗ + βZ)}2
s2(
1n + (Z−Z)2
∑
(Zi−Z)2
) ≤ Mα
= 1 − α
なるMαを求める.
=
(X−E[X])2
σ2/n + (b−β)2
σ2/∑
(Zi−Z)2
s2/σ2∼ 2F2,n−2
となる.
線形回帰分析 – p.30/81
回帰直線全体に関する推測
α∗ + βZの 100(1 − α)%信頼区間
L(Z∗) < α∗ + βZ < U(Z∗)
ただし,Z∗はある範囲の任意のZの値.
L(Z∗) = X + b(Z∗ − Z) − A(Z∗)
U(Z∗) = X + b(Z∗ − Z) + A(Z∗)
A(Z∗) =
√
2F2,n−2,αs2
(
1
n+
(Z∗ − Z)2
∑
(Zi − Z)2
)
線形回帰分析 – p.31/81
Rコード (問題2.8)その1
� �n<-length(z)
new.z<- seq(2, 12, by=0.02)
ones<-rep(1, length(new.z))
pre.z<-rbind(ones, new.z)
a<-lm(x˜z)$coefficients
plot(new.z, a%*%pre.z, ylim=c(0,1),
type="l", lwd=2, xlab="z", ylab="x")� �
線形回帰分析 – p.32/81
Rコード (問題2.8)その2
� �sz<-sum((z-mean(z))ˆ2)
s2<-sum((lm(x˜z)$residuals)ˆ2)/(n-2)
s1<-1/n+(new.z-mean(z))ˆ2/sz
U<-a%*%pre.z+sqrt(2*qf(0.95,2,6)*s2*s1)
L<-a%*%pre.z-sqrt(2*qf(0.95,2,6)*s2*s1)
points(new.z, U, type="l")
points(new.z, L, type="l")
points(z, x)� �
線形回帰分析 – p.33/81
問題2.8結果
2 4 6 8 10 12
0.0
0.2
0.4
0.6
0.8
1.0
z
x
線形回帰分析 – p.34/81
Rコード (点ごとの信頼区間)
� �p.U<-a%*%pre.z+sqrt(qt(0.95,2,6)*s2*s1)
p.L<-a%*%pre.z-sqrt(qt(0.95,2,6)*s2*s1)
points(new.z, p.U, type="l",lty=3)
points(new.z, p.L, type="l",lty=3)� �
線形回帰分析 – p.35/81
点ごとの信頼区間を重ねて図示
2 4 6 8 10 12
0.0
0.2
0.4
0.6
0.8
1.0
z
x
線形回帰分析 – p.36/81
出力値からの入力値の推定 (逆補間)
直線のあてはめ際,あらかじめ決められる変数は入力値にする.(表 2.1データではアンチモンの量)
観測されたX(出力値)から未知のZ(入力値)を推定する.
Z = Z +X − X
b
Zの信頼区間 =⇒ Fiellerの定理
線形回帰分析 – p.37/81
Fiellerの定理
U ∼ N(µ, sa1), V ∼ N(ν, sa2),s : 推定分散の平方根
g =t2m,α/2s
2a22
V 2
と定義,g < 1と仮定 (V が 0と有意に異なることと同値).µ/νの 100(1 − α)%信頼区間
1
1 − g
(
U
V± tm,α/2s
V
√
(1 − g)a21 +
U 2a22
V 2
)
線形回帰分析 – p.38/81
Fiellerの定理の解説
θ = µ/νとするとき,
E[U − θV ] = 0, V [U − θV ] = s2(a21 + θ2a2
2)
θの 100(1 − α)%信頼区間{
θ :(U − θV )2
s2(a21 + θ2a2
2)≤ t2m,α/2
}
この二次不等式は,tm,α/2s2a2
2/V2 < 1であれば,
両側の限界値が求まる.
線形回帰分析 – p.39/81
Zの信頼区間 (Fiellerの定理の適用)
U = X − X,V = bとする.
se(U) = s√
n+1n se(V ) = s√
∑
(Zi−Z)2
⇓ ⇓a2
1 = (n + 1)/n a22 = 1/
∑
(Zi − Z)2
=⇒
g =t2m,α/2s
2a22
V 2=
t2n−2,α/2s2
b2∑
(Zi − Z)2
線形回帰分析 – p.40/81
Zの信頼区間 (Fiellerの定理の適用)
Fiellerの定理に適用すると,E[U ]E[V ] = β(Z−Z)
β = (Z − Z)の 100(1 − α)%信頼区間
X − X
b(1 − g)±tn−2,α/2s
b(1 − g)
√
(1 − g)(n + 1)
n+
(X − X)2
b2∑
(Zi − Z)2
を得る.
Zを移項すると,Zの100(1−α)%信頼区間になる.
線形回帰分析 – p.41/81
Rコード (Zの信頼区間)� �new.x<-0.577
hat.z<-mean(z)+(new.x-mean(x))/a[2]
g1<-s2*(qt(0.975, (length(z)-2)))ˆ2
g2<-a[2]ˆ2*sum((z-mean(z))ˆ2)
g<-g1/g2
m1<-mean(z)+(new.x-mean(x))/(a[2]*(1-g))
m2<-qt(0.975, (n-2))*sqrt(s2)/(a[2]*(1-g))
m31<-((1-g)*(n+1))/(n)
m32<-(new.x-mean(x))ˆ2/(a[2]ˆ2*sz)
m1+m2*sqrt(m31+m32)
m1-m2*sqrt(m31+m32)� �線形回帰分析 – p.42/81
Zの信頼区間 (結果)
Zの予測値� �> hat.z
9.199561� �Zの 95%信頼区間� �> m1+m2*sqrt(m31+m32)
10.24142
> m1-m2*sqrt(m31+m32)
8.189849� �
8.19 ≤ Z ≤ 10.24
線形回帰分析 – p.43/81
応用例:薬物用量とAUC
AUC(Area Under the bood - level Curve)・・・血中濃度曲線下面積
0 5 10 15 20 25
02
46
810
12
time
conc
entr
atio
ns
Subject 1
0 5 10 15 20 25
02
46
810
12
time
conc
entr
atio
ns
Subject 2
0 5 10 15 20 25
02
46
810
12
time
conc
entr
atio
ns
Subject 3
線形回帰分析 – p.44/81
データ
SASのNLMIXEDプロシジャのExample(Pinheiro and Bates, 1995)
time(測定時間) conc(血中濃度) dose(薬物用量)
12人が 25時間で 11回計測.
AUCは,RのPKパッケージのAUC関数を用いて計算.
線形回帰分析 – p.45/81
Rコード (AUCの計算)� �data<-read.table("AUC_data.txt", header=TRUE)
library(PK)
auc<-matrix(0, 12, 3)
for(i in 1:12)
{auc[i,]<-
AUC(conc=data$CONC[data$SUBJECT==i],
time=data$TIME[data$SUBJECT==i])$AUC}
colnames(auc) <- c("obs","inter","inf")
auc<-data.frame(auc)� �
線形回帰分析 – p.46/81
モデル
線形単回帰モデル
log(AUC) = α + β log(用量) + ε
冪モデル
AUC = eα(用量)βeε
{
β 6= 1 =⇒ AUCと用量は非線形関係
β = 1 =⇒ AUCと用量は線形関係
線形回帰分析 – p.47/81
H0 : β = 1の検定
反応変数を log(AUC) − log(用量)にかえて,モデル
log(AUC) − log(用量) = α + β∗ log(用量) + ε
より,β∗を推定して,
H0 : β∗ = 0
の検定を行う.
線形回帰分析 – p.48/81
Rコード (直線あてはめ)� �dose<-numeric(0)
for(i in 1:12)
{dose[i]<-data$DOSE[data$SUBJECT==i]}
ones<-rep(1, length(dose))
predictor<-rbind(ones, log(dose))
plot(log(dose), log(auc$inf),
xlab="log(DOSE)",ylab="log(AUC)",ylim=c(4.4, 5.4))
points(log(dose),
lm(log(auc$inf)˜log(dose))$coe%*%predictor,type="l")� �
線形回帰分析 – p.49/81
直線あてはめ結果
1.2 1.3 1.4 1.5 1.6 1.7
4.4
4.6
4.8
5.0
5.2
5.4
log(DOSE)
log(
AU
C)
log(AUC) = 4.13 + 0.42 log(用量)
線形回帰分析 – p.50/81
Rコード (H0 : β = 1の検定)
� �coefficients(summary(
lm((log(auc$inf)-log(dose))˜log(dose))))� �
Estimate Std. Error t value Pr(>|t|)(Intercept) 4.13 0.75 5.47 <0.001
log(dose) −0.58 0.49 −1.17 0.27
従って,傾きは 1と有意に異なると言えない.
線形回帰分析 – p.51/81
Rコード (βの信頼区間)
� �confint(lm((log(auc$inf))˜log(dose)))
� �2.5 % 97.5 %
(Intercept) 2.44 5.81
log(dose) −0.68 1.52
線形回帰分析 – p.52/81
Rコード (回帰診断)� �plot(lm(log(auc$inf)˜log(dose)))
� �残差プロット・・・データに異常値が含まれているか,誤差の等分散性が満足しているかを調べる.
Q-Qプロット・・・誤差について正規性を満足しているか調べる.
Cookの距離・・・そのデータの回帰パラメータへの影響を調べる.
線形回帰分析 – p.53/81
回帰診断
4.60 4.70 4.80
0.0
0.5
1.0
1.5
Fitted values
Sta
ndar
dize
d re
sidu
als
Scale-Location plot
1
1011
2 4 6 8 10 12
0.0
0.1
0.2
0.3
0.4
0.5
Obs. number
Coo
k’s
dist
ance
Cook’s distance plot
1
10
6
線形回帰分析 – p.54/81
直線あてはめ結果 (取り除き後)
1.2 1.3 1.4 1.5 1.6 1.7
4.4
4.6
4.8
5.0
5.2
5.4
log(DOSE)
log(
AU
C)
log(AUC) = 3.59 + 0.73 log(用量)
線形回帰分析 – p.55/81
H0 : β = 1の検定 (取り除き後)
� �coefficients(summary(
lm((log(auc$inf)[-1]-log(dose)[-1])
˜log(dose)[-1])))� �
Estimate Std. Error t value Pr(>|t|)(Intercept) 3.59 0.48 7.44 <0.001
log(dose)[-1] −0.27 0.31 −0.86 0.41
傾きは 1と有意に異なると言えない.
線形回帰分析 – p.56/81
βの信頼区間 (取り除き後)
� �confint(
lm((log(auc$inf)[-1])˜log(dose)[-1]))� �
2.5 % 97.5 %
(Intercept) 2.50 4.69
log(dose)[-1] 0.02 1.44
線形回帰分析 – p.57/81
結果のまとめ
log(AUC) = 4.13 + 0.42 log(用量)
H0 : β = 1は棄却されない.
信頼区間 −0.68 ≤ β ≤ 1.52
AUCと用量は非線形関係とは言えない.
(Subject 1を取り除く)
log(AUC) = 3.59 + 0.73 log(用量)
H0 : β = 1は棄却されない.
信頼区間 0.02 ≤ β ≤ 1.44
AUCと用量は非線形関係とは言えない.
線形回帰分析 – p.58/81
回帰診断 (Subject1を取り除いた後)
4.5 4.6 4.7 4.8 4.9
0.0
0.2
0.4
0.6
0.8
1.0
1.2
1.4
Fitted values
Sta
ndar
dize
d re
sidu
als
Scale-Location plot
9
810
2 4 6 8 10
0.0
0.5
1.0
1.5
2.0
2.5
Obs. number
Coo
k’s
dist
ance
Cook’s distance plot
8
9
10
線形回帰分析 – p.59/81
4.4節量的実験要因
表 4.6データX:ラットの病の回復度合いZ:ビタミンDの投与用量
群 用量 (Zi) ni Xi si
1 3.5(0) 10 1.8 1.09
2 7.0(1) 8 3.31 1.63
3 14.0(2) 13 3.42 1.02
Zi = log2(用量/3.5)
si : 各群におけるXの標準偏差
線形回帰分析 – p.60/81
解析項目
モデルの次数に関する検定
Z2の係数が有意に 0かどうかの検定
Zの係数が有意に 0かどうかの検定
結論
線形回帰分析 – p.61/81
モデルの次数に関する推測
X ′i : ZiでのXの予測値.(i = 1, 2, . . . , g)
H0 : 真の式は次数が 2次以下
F =
∑
ni(Xi − X ′i)
2
(g − 3)s2
F > Fg−3,ν,α/3 =⇒ H0 reject
表 4.6データでは群が 3つしかないので,
この検定は行わない.
線形回帰分析 – p.62/81
二次式のあてはめ
XとZが曲線関係と仮定したときの統計モデル
X = α + βZ + γZ2 + ε
誤差分散 (プールした群内の分散)の推定量 s
s2 =
∑
(ni − 1)s2i
∑
(ni − 1)
線形回帰分析 – p.63/81
最小二乗推定量
最小二乗推定量 a,b,c
a
b
c
= M−1
∑
niXi∑
niXiZi∑
niXiZ2i
ただし,
M =
∑
ni
∑
niZi
∑
niZ2i
∑
niZi
∑
niZ2i
∑
niZ3i
∑
niZ2i
∑
niZ3i
∑
niZ4i
線形回帰分析 – p.64/81
Rコード (最小二乗推定量)� �z<-c(0, 1, 2)
n<-c(10, 8, 13)
x<-c(1.80, 3.31, 3.42)
M<-c(sum(n), sum(n*z), sum(n*zˆ2),
sum(n*z), sum(n*zˆ2), sum(n*zˆ3),
sum(n*zˆ2), sum(n*zˆ3), sum(n*zˆ4))
M<-matrix(M, ncol=3)
M2<-c(sum(n*x), sum(n*x*z), sum(n*x*zˆ2))
a<-solve(M)%*%M2� �
線形回帰分析 – p.65/81
Rコード (最小二乗推定量:結果)
� �> a
[,1]
[1,] 1.80
[2,] 2.21
[3,] -0.70� �a = 1.80,b = 2.21,c = −0.70
線形回帰分析 – p.66/81
2次の項の係数に関する推測
H0 : Z2の係数 γ = 0有意水準 (α/2%)
Lc =c
se(c)
ただし,
se(c) = s√
m(3,3),
m(3,3)はM−1の 3行 3列成分
|Lc| > tn−3,α/4 =⇒ H0 reject
線形回帰分析 – p.67/81
Rコード (2次の項の係数に関する推測)� �s2<-((n-1)%*%sˆ2)/sum(n-1)
se.c<-sqrt(s2*solve(M)[3,3])
L.c<-a[3]/se.c
p.c<-1-pt(abs(L.c), 28, 0.0125)#p値� �アウトプット� �> p.c
0.089� �H0 : γ = 0は有意水準 0.025%で棄却できない.
線形回帰分析 – p.68/81
回帰曲線全体に関する推測 (1)
X ′Z : ある値Zにおける反応の期待値
X ′Z = a + bZ + cZ2 = Z
′
a
b
c
ただし,Z′ = (1, Z, Z2)
線形回帰分析 – p.69/81
回帰曲線全体に関する推測 (2)
2次式の場合のWorking-Hotelling信頼帯 (信頼度 100(1 − α)%)
X ′Z ±
√
3F3,n.−g,αse(X ′z)
ただし,
n. =∑
ni
se(X ′Z) = s
√Z′M−1Z
線形回帰分析 – p.70/81
Rコード (回帰曲線全体に関する推測)� �new.z<-seq(0, 3, 0.2)
ones<-rep(1, length(new.z))
new.Z<-cbind(ones, new.z, new.zˆ2)
se.X<-sqrt(s2*diag(new.Z%*%solve(M)%*%t(new.Z)))
plot(new.z, new.Z%*%a, ylim=c(0,6),
type="l", xlab="z", ylab="x")
U<-new.Z%*%a+sqrt(3*qf(0.95, 3, sum(n)-3))*se.X
L<-new.Z%*%a-sqrt(3*qf(0.95, 3, sum(n)-3))*se.X
points(new.z, U, type="l")
points(new.z, L, type="l")
points(z, x)
� �
線形回帰分析 – p.71/81
回帰曲線全体に関する推測:結果
0.0 0.5 1.0 1.5 2.0 2.5 3.0
01
23
45
6
z
x
線形回帰分析 – p.72/81
一次式のあてはめ
モデル
X = α∗ + βZ + ε
最小二乗推定量
β =
∑
ni(Zi − Z)(Xi − X)∑
ni(Zi − Z)2
α∗ =
∑
niXi − β∑
niZi∑
ni
線形回帰分析 – p.73/81
一次式の最小二乗推定値� �beta<-((sum(n)*sum(n*x*z)-(sum(n*x))*(sum(n*z)))
/(sum(n)*sum(n*zˆ2)-sum(n*z)ˆ2))
alpha<-((sum(n*x)-beta*sum(n*z))/(sum(n)))� �� �> beta
[1] 0.786
> alpha
[1] 2.007� �
β = 0.786, α∗ = 2.007
線形回帰分析 – p.74/81
一次式の傾きに関する推測
H0 : β = 0の検定 (有意水準α/2%)
Lβ =β
se(β)
ただし,
se(β) =s√∑
ni√
∑
ni(Zi − Z)2
|Lβ| > tn−3,α/4 =⇒ H0 reject
線形回帰分析 – p.75/81
Rコード (一次式の傾きに関する推測)
� �se.beta<-(sqrt((s2*sum(n))/
(sum(n)*sum(n*zˆ2)-sum(n*z)ˆ2)))
L.beta<-beta/se.beta
p.beta<-1-pt(L.beta, 28, 0.0125)� �
線形回帰分析 – p.76/81
一次式の傾きに関する推測:結果
アウトプット� �> L.beta
3.067
> p.beta
0.002� �H0 : β = 0は有意水準 0.025%で棄却できる.
線形回帰分析 – p.77/81
Rコード (一次式と二次式の図示)
� �a1<-coefficients(lm(x˜z, weight=n))
ones<-rep(1, length(new.z))
new.Z1<-cbind(ones, new.z)
points(new.z, new.Z1%*%a1, type="l")� �
線形回帰分析 – p.78/81
一次式と二次式の図示:結果
0.0 0.5 1.0 1.5 2.0 2.5 3.0
01
23
45
6
z
x
線形回帰分析 – p.79/81
表4.6データの結果のまとめ
二次式ではZ2の係数は有意に 0と異なるとは言えなかった.
一次式ではZの係数は有意に 0と異なると言えた.
一次式のZの係数は正となり,ビタミンDの用量を増やすと回復具合が増す.
用量を増やし続けると飽和状態になる可能性も含め,外挿データ部分については議論は出来ない.
線形回帰分析 – p.80/81
参考文献
J.L.フライス (KR研究会訳) (2004),臨床試験のデザイ
ンと解析,アーム.
RjpWiki,
http://www.okada.jp.org/RWiki/index.php?RjpWiki
Pinheiro, J.C. and Bates, D.M. (1995), "Approximations
to the Log-likelihood Function in the Nonlinear
Mixed-effects Model," Journal of Computational and
Graphical Statistics, 4, 12-35.
線形回帰分析 – p.81/81
top related