0.9K Views
March 29, 24
スライド概要
[第8回大阪sas勉強会] 中川 雄貴
SAS言語を中心として,解析業務担当者・プログラマなのコミュニティを活性化したいです
2023年03月24日 第8回 大阪SAS勉強会 デザイン行列について 臨床開発事業本部 データサイエンスセンター 統計解析2部 中川 雄貴 1
デザイン行列 デザイン行列 重回帰モデルの説明変数の値や分散分析の群の配置等を データ行列としてまとめたもの(計画行列) ⇒ 説明変数の連続量や指示変数を行列で表す デザイン行列のメリット 重回帰分析,分散分析,共分散分析等々を類似したモデルで表すこと ができる 𝒚𝒚 = 𝑿𝑿𝜷𝜷 + 𝜺𝜺 𝒚𝒚:目的変数 𝑿𝑿:デザイン行列 𝜷𝜷:説明変数 𝜺𝜺:誤差項 2
デザイン行列(データ例) 𝑽𝑽𝑽𝑽𝑽𝑽𝒊𝒊 = 𝜷𝜷𝟎𝟎 + 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 ∗ 𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝒊𝒊 + 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 ∗ 𝑺𝑺𝑺𝑺𝑺𝑺𝒊𝒊 + 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 ∗ 𝑨𝑨𝑨𝑨𝑨𝑨𝒊𝒊 + 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 ∗ (𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝒊𝒊 ∗ 𝑨𝑨𝑨𝑨𝑨𝑨𝒊𝒊 ) + 𝜺𝜺𝒊𝒊 𝛽𝛽0 :切片 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 :薬剤のパラメータ(基準はPlacebo) :性別のパラメータ(基準はFemale) 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 :年齢のパラメータ 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷∗𝐴𝐴𝐴𝐴𝐴𝐴 :薬剤と年齢の交互作用のパラメータ 3
デザイン行列(データ例) 𝑽𝑽𝑽𝑽𝑽𝑽𝒊𝒊 = 𝜷𝜷𝟎𝟎 + 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 ∗ 𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝒊𝒊 + 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 ∗ 𝑺𝑺𝑺𝑺𝑺𝑺𝒊𝒊 + 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 ∗ 𝑨𝑨𝑨𝑨𝑨𝑨𝒊𝒊 + 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 ∗ (𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝑫𝒊𝒊 ∗ 𝑨𝑨𝑨𝑨𝑨𝑨𝒊𝒊 ) + 𝜺𝜺𝒊𝒊 134 1 1 128 1 1 116 1 1 129 1 1 150 1 1 = 134 1 0 144 1 0 120 1 0 132 1 0 140 1 0 1 1 1 0 0 1 1 1 0 0 24 37 43 48 52 28 39 40 41 58 𝜀𝜀1 1 ∗ 24 𝜀𝜀2 1 ∗ 37 𝜀𝜀3 1 ∗ 43 𝛽𝛽0 𝜀𝜀4 1 ∗ 48 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 𝜀𝜀5 1 ∗ 52 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 + 𝜀𝜀 0 ∗ 28 6 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 𝜀𝜀7 0 ∗ 39 𝜀𝜀8 0 ∗ 40 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷∗𝐴𝐴𝐴𝐴𝐴𝐴 𝜀𝜀9 0 ∗ 41 𝜀𝜀10 0 ∗ 58 正規方程式によるパラメータの推定 𝛽𝛽0 147.9816 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 −3.84745 � = (𝑿𝑿𝑇𝑇 𝑿𝑿)−1 𝑿𝑿𝑇𝑇 𝒚𝒚 = 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 = −10.8422 𝜷𝜷 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 −0.18146 0.028796 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷∗𝐴𝐴𝐴𝐴𝐴𝐴 4
GLMMOD Procedureの基本 GLMMOD Procedure 一般線形モデルのデザイン行列を作成するプロシジャ. Reg Procedureではカテゴリ変数を使用できず,Data Stepで置き換える. ⇒GLMMOD Procedureでダミー変数を作成できる. PROC GLMMOD < options > ; BY variables ; CLASS variables ; FREQ variable ; MODEL dependents = independents < / options > ; WEIGHT variable ; run; 5
GLMMOD Procedureの出力 proc glmmod data=wk01 outdesign=design outparm=param; class Drug Sex; model val = Drug Age Sex Drug*Age; run; outdesign:デザイン行列のデータセット outparm:モデル効果とデザイン行列の間の関連性の情報を含むデータセット. デザイン行列 6
デザイン行列の使用(Reg Procedure) proc reg data=design; model val = col1 col2 col3 col4 col5 col6 col7 col8; run; quit; 7
デザイン行列の選択 outdesign:デザイン行列のデータセット outparm:モデル効果と計画行列列の間の関連性に関する情報を含むデータセット デザイン行列 モデル効果と計画行列列との関連性 GLMMOD Procedureで生成されたデザイン行列はカテゴリー変数の各水準を基準とし たものを作成するため,ランク落ちした行列になる. ⇒想定したデザイン行列かつフルランクの行列となるよう,列を選択する必要がある. 8
適正化したデザイン行列の使用 proc reg data=design; model val = col1 col2 col4 col6 col7 / noint; run; quit; *Reg Procedureはデフォルトで切片を含んだモデルを作成する. デザイン行列のCol1との重複解消のため,nointオプションの使用 or col1の不使用 𝛽𝛽0 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷 𝛽𝛽𝑆𝑆𝑆𝑆𝑆𝑆 𝛽𝛽𝐴𝐴𝐴𝐴𝐴𝐴 𝛽𝛽𝐷𝐷𝐷𝐷𝐷𝐷𝐷𝐷∗𝐴𝐴𝐴𝐴𝐴𝐴 147.9816 −3.84745 = −10.8422 −0.18146 0.028796 9
まとめ • デザイン行列を知ることで線形モデルの理解が深まる • GLMMOD Procedureによるデザイン行列の生成ができるが,フル ランクとなるように選択する • GENMOD ProcedureやLOGISTIC Procedureでは,classステート メントのparam=オプションによるダミー変数の生成方法はいくつ もある 効果法(param=effect) GLM法(param=glm) 参照法(param=reflect) 累積順序法(param=ordinal) 多項式法(param=polynomial) 10
参考文献 • Design matrix,https://en.wikipedia.org/wiki/Design_matrix • SAS Institute Inc.,SAS/STAT 15.2® User’s Guide The GLMMOD Procedure • 吉田早織,魚住龍史,線形モデルにおけるCLASSステートメント の機能,SASユーザー総会 2014. 11