Comments
Description
Transcript
線形回帰分析 - 久留米大学
線形回帰分析 久留米大学バイオ統計センター 第 1 回公開セミナー 川口 淳 kawaguchi [email protected] 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 0.2 0.4 x 0.6 0.8 データプロット 2 4 6 8 10 12 14 z 線形回帰分析 – p.6/81 最小二乗推定量 n 組の観測値 (Z1 , X1 ), . . . , (Zn , Xn ) n X S2 = (Xi − α∗ − βZi )2 i=1 を最小にするような a∗ ,b は次のように与えら れる. P (Zi − Z̄)(Xi − X̄) P b = (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 と表したとき,α と β の最小二乗推定量は P (Zi − Z̄)(Xi − X̄) P a = X̄, b= (Zi − Z̄)2 回帰直線は Z と X の平均を通る. a と b は無相関. 線形回帰分析 – p.11/81 共分散と相関係数 Z と X の共分散の推定量 sZX P (Zi − Z̄)(Xi − X̄) sZX = n−1 ⇒ sZX b= sX Z と X の相関係数の推定量 r (−1 ≤ r ≤ 1) sZX r= sZ sX ⇒ sX b=r sZ ただし, P 1 sZ = n−1 (Zi − Z̄)2 ,sX = 1 n−1 P (Xi − X̄)2 線形回帰分析 – p.12/81 決定係数 2 R = S12 −S22 S12 のことを決定係数と呼ぶ.ただし, X (Xi − X̄)2 , S12 = S22 = X [Xi − X̄ −b(Zi − Z̄)]2 決定係数は,データの変動のうち求めた回帰直線 が説明できる割合. 他方, R2 = r 2 が成立し,相関係数の二乗と決定係数は一致する. 線形回帰分析 – p.13/81 測定の信頼性 b は βU,T RZ の推定となる. ただし, X = U +f, Z = T +e, σT2 RZ = 2 , 2 σT + σe e と f は無相関確率変数 σU2 RX = 2 σU + σf2 βU,T は U と V の傾き 傾きの推定量は Z の測定信頼度だけに依存する. Z の信頼度が下がると,傾きは小さくなる. 線形回帰分析 – p.14/81 2 e の分散 σ の不偏推定量 誤差分散の推定量は以下のように与えられ,回帰 パラメータの推測に用いられる. P ∗ 2 (X − a − bZ ) i i 2 s = n−2 P (Xi − X̄ − a∗ − b(Zi − Z̄))2 = n−2 不偏推定量 (E[s2 ] = σ 2 ) にするために n − 2 で割る. 線形回帰分析 – p.15/81 傾きに関する推測 (1) β の 100(1 − α)% 信頼区間 b − tn−2,α/2 se(b) ≤ β ≤ b + tn−2,α/2 se(b) ただし, se(b) = pP s (Zi − Z̄)2 s :誤差分散の推定量の平方根 tν,p :自由度 ν の t 分布上側 p% 点. 線形回帰分析 – p.16/81 傾きに関する推測 (2) H0 : β = 0 の検定 (有意水準 α%) b t= se(b) t > tn−2,α/2 (H0 (検定統計量) =⇒ H0 reject reject ⇐⇒ 信頼区間が 0 を含まない) 線形回帰分析 – p.17/81 傾きの検定と相関係数の検定 検定統計量 t に対し, √ b r n−2 t= = √ se(b) 1 − r2 が成り立つ. 故に H0 : β = 0 ⇐⇒ H0 : ρ = 0 ただし,ρ は真の相関係数を表す. 線形回帰分析 – p.18/81 切片に関する推測 (1) α∗ の 100(1 − α)% 信頼区間 a∗ − tn−2,α/2 se(a∗ ) ≤ α∗ ≤ a∗ + tn−2,α/2 se(a∗ ) ただし, s se(a∗ ) = s 1 Z̄ 2 +P n (Zi − Z̄)2 線形回帰分析 – p.19/81 切片に関する推測 (2) H0 : α∗ = 0 の検定 (有意水準 α%) a∗ t= 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 β の最小二乗推定量 P Zi Xi β̂ = P 2 Zi 線形回帰分析 – p.24/81 原点を通ると仮定された直線 (2) β の 100(1 − α)% 信頼区間 β̂ − tn−2,α/2 se(β̂) ≤ β ≤ β̂ + tn−2,α/2 se(β̂) ただし, v se(β) = pP Zi2 1 X v = (Xi − β̂Zi )2 n−1 線形回帰分析 – p.25/81 R コード (原点を通る直線) summary(lm(x˜z-1)) confint(lm(x˜z-1)) アウトプット(一部分) Estimate Std.Error t value Pr(>|t|) 0.063 0.001 49.11 <0.001 z 信頼区間 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 − α)% 信頼区間 s 2 1 (Z − Z̄) 0 a∗ + bZ0 ± tn−2,α/2 × s × +P n (Zi − Z̄)2 Z0 = 0 のときは,切片の信頼区間と一致する. 線形回帰分析 – p.28/81 回帰直線全体に関する推測 (考え方 1) Z = Zi (i = 1, 2, . . . ) で同時に信頼区間を作りたい. =⇒ 多重性の調整 (Bonferroni など) または, ∗ ∗ 2 {a + bZ − (α + βZ)} ≤ Mα , P 2 (Z−Z̄) 1 2 P s n + (Z −Z̄)2 i なる Mα を求める. ∀Z = 1−α 線形回帰分析 – p.29/81 回帰直線全体に関する推測 (考え方 2) 同値なことで, ∗ ∗ 2 {a + bZ − (α + βZ)} P max ≤ Mα = 1 − α 2 Z̄) Z s2 n1 + P(Z− (Zi −Z̄)2 なる Mα を求める. = (X̄−E[X̄])2 σ 2 /n 2 (b−β) + σ2 / P(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 ∗ ) s ∗ − Z̄)2 1 (Z 2F2,n−2,α s2 A(Z ∗ ) = +P n (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 0.0 0.2 0.4 x 0.6 0.8 1.0 問題 2.8 結果 2 4 6 8 10 12 z 線形回帰分析 – 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 0.0 0.2 0.4 x 0.6 0.8 1.0 点ごとの信頼区間を重ねて図示 2 4 6 8 10 12 z 線形回帰分析 – p.36/81 出力値からの入力値の推定 (逆補間) 直線のあてはめ際,あらかじめ決められる変数は 入力値にする.(表 2.1 データではアンチモンの量) 観測された X(出力値) から未知の Z(入力値) を推 定する. X − X̄ Ẑ = Z̄ + b Z の信頼区間 =⇒ Fieller の定理 線形回帰分析 – p.37/81 Fieller の定理 U ∼ N (µ, sa1 ), V ∼ N (ν, sa2 ), s : 推定分散の平方根 g= t2m,α/2 s2 a22 V2 と定義, g < 1 と仮定 (V が 0 と有意に異なることと同値). µ/ν の 100(1 − α)% 信頼区間 ! r 2 a2 tm,α/2 s 1 U U 2 (1 − g)a21 + ± 1−g V V V2 線形回帰分析 – p.38/81 Fieller の定理の解説 θ = µ/ν とするとき, E[U − θV ] = 0, V̂ [U − θV ] = s2 (a21 + θ2 a22 ) θ の 100(1 − α)% 信頼区間 2 (U − θV ) 2 θ: 2 2 ≤ t m,α/2 2 2 s (a1 + θ a2 ) この二次不等式は,tm,α/2 s2 a22 /V 2 < 1 であれば, 両側の限界値が求まる. 線形回帰分析 – p.39/81 Z の信頼区間 (Fieller の定理の適用) U = X − X̄ ,V = b とする. q se(U ) = s n+1 se(V ) = √P n ⇓ a21 = (n + 1)/n =⇒ g= ⇓ P 2 a2 = 1/ (Zi − Z̄)2 t2m,α/2 s2 a22 V2 s (Zi −Z̄)2 t2n−2,α/2 s2 = 2P b (Zi − Z̄)2 線形回帰分析 – p.40/81 Z の信頼区間 (Fieller の定理の適用) Fieller の定理に適用すると, E[U ] β(Z−Z̄) = (Z − Z̄) の 100(1 − α)% 信頼区間 E[V ] = β X − X̄ tn−2,α/2 s ± b(1 − g) b(1 − g) を得る. s (1 − g)(n + 1) (X − X̄)2 + 2P n b (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 0 5 10 15 20 time Subject 1 25 12 0 2 4 6 concentrations 8 10 12 10 8 0 2 4 6 concentrations 6 4 2 0 concentrations 8 10 12 AUC(Area Under the bood - level Curve) ・ ・ ・血中濃度曲線下面積 0 5 10 15 20 time Subject 2 25 0 5 10 15 20 25 time 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(AU C) = α + β log(用量) + ε 冪モデル AU C = eα (用量)β eε ( β= 6 1 =⇒ AU C と用量は非線形関係 β = 1 =⇒ AU C と用量は線形関係 線形回帰分析 – p.47/81 H0 : β = 1 の検定 反応変数を log(AU C) − log(用量) にかえて, モデル ∗ log(AU C) − 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 4.4 4.6 4.8 log(AUC) 5.0 5.2 5.4 直線あてはめ結果 1.2 1.3 1.4 1.5 1.6 1.7 log(DOSE) log(AU C) = 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 回帰診断 Scale-Location plot Cook’s distance plot 0.5 0.4 1 0.2 0.5 0.3 10 Cook’s distance 1.0 11 0.1 10 6 0.0 0.0 Standardized residuals 1.5 1 4.60 4.70 4.80 Fitted values 2 4 6 8 10 12 Obs. number 線形回帰分析 – p.54/81 4.4 4.6 4.8 log(AUC) 5.0 5.2 5.4 直線あてはめ結果 (取り除き後) 1.2 1.3 1.4 1.5 1.6 1.7 log(DOSE) log(AU C) = 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(AU C) = 4.13 + 0.42 log(用量) H0 : β = 1 は棄却されない. 信頼区間 −0.68 ≤ β ≤ 1.52 AUC と用量は非線形関係とは言えない. (Subject 1 を取り除く) log(AU C) = 3.59 + 0.73 log(用量) H0 : β = 1 は棄却されない. 信頼区間 0.02 ≤ β ≤ 1.44 AUC と用量は非線形関係とは言えない. 線形回帰分析 – p.58/81 回帰診断 (Subject1 を取り除いた後) 1.4 Scale-Location plot Cook’s distance plot 8 2.5 9 8 2.0 1.5 1.0 Cook’s distance 1.0 0.8 0.6 0.5 0.4 0.2 9 0.0 10 0.0 Standardized residuals 1.2 10 4.5 4.6 4.7 Fitted values 4.8 4.9 2 4 6 8 10 Obs. number 線形回帰分析 – p.59/81 4.4 節 量的実験要因 表 4.6 データ X:ラットの病の回復度合い Z:ビタミン D の投与用量 群 用量 (Zi ) 1 3.5(0) 2 7.0(1) 8 3.31 1.63 3 14.0(2) 13 3.42 1.02 ni X̄i 10 1.8 si 1.09 Zi = log2 (用量/3.5) si : 各群における X の標準偏差 線形回帰分析 – p.60/81 解析項目 モデルの次数に関する検定 Z 2 の係数が有意に 0 かどうかの検定 Z の係数が有意に 0 かどうかの検定 結論 線形回帰分析 – p.61/81 モデルの次数に関する推測 X 0 i : Zi での X の予測値.(i = 1, 2, . . . , g) H0 : 真の式は次数が 2 次以下 P ni (X̄i − X 0 i )2 F = (g − 3)s2 F > Fg−3,ν,α/3 =⇒ H0 reject 表 4.6 データでは群が 3 つしかないので, この検定は行わない. 線形回帰分析 – p.62/81 二次式のあてはめ X と Z が曲線関係と仮定したときの統計モデル X̄ = α + βZ + γZ 2 + ε 誤差分散 (プールした群内の分散) の推定量 s P 2 (n − 1)s i i s2 = P (ni − 1) 線形回帰分析 – p.63/81 最小二乗推定量 最小二乗推定量 a,b,c P ni X̄i a −1 P ni X̄i Zi b =M P c ni X̄i Zi2 ただし, P P P ni Zi2 ni Zi ni P P P 2 3 M = ni Zi ni Zi ni Zi P P P 2 3 ni Zi ni Zi ni Zi4 線形回帰分析 – 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 : Z 2 の係数 γ = 0 有意水準 (α/2%) c Lc = 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 0 Z : ある値 Z における反応の期待値 a 0 2 0 X Z = a + bZ + cZ = Z b c ただし,Z0 = (1, Z, Z 2 ) 線形回帰分析 – p.69/81 回帰曲線全体に関する推測 (2) 2 次式の場合の Working-Hotelling 信頼帯 (信頼度 100(1 − α)%) p X 0 Z ± 3F3,n.−g,α se(X 0 z ) ただし, n. = X ni √ se(X 0 Z ) = s Z0 M−1 Z 線形回帰分析 – p.70/81 R コード (回帰曲線全体に関する推測) 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) 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") 線形回帰分析 – p.71/81 3 2 1 0 x 4 5 6 回帰曲線全体に関する推測:結果 0.0 0.5 1.0 1.5 2.0 2.5 3.0 z 線形回帰分析 – p.72/81 一次式のあてはめ モデル X̄ = α∗ + βZ + ε 最小二乗推定量 P ni (Zi − Z̄)(Xi − X̄) P β̂ = ni (Zi − Z̄)2 P P ni X̄i − β̂ ni Zi ∗ P α̂ = ni 線形回帰分析 – p.73/81 一次式の最小二乗推定値 alpha<-((sum(n*x)-beta*sum(n*z))/(sum(n))) beta<-((sum(n)*sum(n*x*z)-(sum(n*x))*(sum(n*z))) /(sum(n)*sum(n*zˆ2)-sum(n*z)ˆ2)) > beta [1] 0.786 > alpha [1] 2.007 β̂ = 0.786, α̂∗ = 2.007 線形回帰分析 – p.74/81 一次式の傾きに関する推測 H0 : β = 0 の検定 (有意水準 α/2%) Lβ̂ = β̂ se(β̂) ただし, pP s ni se(β̂) = pP 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 3 2 1 0 x 4 5 6 一次式と二次式の図示:結果 0.0 0.5 1.0 1.5 2.0 2.5 3.0 z 線形回帰分析 – p.79/81 表 4.6 データの結果のまとめ 二次式では Z 2 の係数は有意に 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