統計ER

R, EZR, SPSS, KH Coder を使ったデータ分析方法を紹介するブログ。ニッチな内容が多め

逆確率重み付けを目的変数が連続データの場合にも使用することはできるか?

逆確率重み付けとは、傾向スコアの逆数を用いて、人数があまり多くない層を厚くする方法で、処方の有無の背景をそろえる方法である。

目的変数が連続データの場合でも利用可能だろうか?

答えはYesである。

逆確率重み付けとは?

逆確率重み付けは、Inverse Probability of Treatment Weighting が英語の原語で、IPTWと略されて呼ばれている。

逆確率重み付けは、傾向スコアの逆数を用いて、処方されているけど傾向スコアが低い症例や、処方されていないけど傾向スコアが高い症例など、人数が少ない層を補うために、人数を増やして見せて、処方ありなしの背景を疑似的にそろえる方法である。

YouTubeで、図を使ったわかりやすい解説動画を見つけたので共有する。

新谷歩の今日から使える医療統計学ビデオ講座: 傾向スコアの使い方とコンセプト - YouTube

傾向スコアとは?

では、傾向スコアとは何か?

傾向スコアとは、propensity score プロペンシティスコアとも呼ばれ、ある処方をするかしないかの確率を、他の説明変数で予測したものである。

ロジスティック回帰を利用して計算する。

逆確率重み付けを用いて連続データを目的変数にした解析を行うことは可能か?

EZRで逆確率重み付けを用いた線形回帰は可能だろうか?

答えはYesである。

まずは、ロジスティック回帰で逆確率重み付け変数を計算する。

次に線形回帰メニュー(単回帰・重回帰)から解析をする。

出力されたRスクリプトを活用し、IPTWをweights=で指定して、再実行する。

逆確率重み付けを重回帰に応用した場合

たとえば、以下のように、EZR公式マニュアルの ElderlyAML.rda データセットを用いて、Anthracyclines に関する、IPTW(変数名:weight.ATE.GLM.1)を作成した後、BM_blastを目的変数とした回帰分析を行うとする。

まず、逆確率重み付け変数を計算する。

次に、線形回帰からBM_blastを目的変数に、Anthracyclinesを説明変数にした回帰分析を実施する。

#####線形回帰(単回帰、重回帰)#####
RegModel.6 <- lm(BM_blast~Anthracyclines, data=ElderlyAML)
res <- NULL
(res <- summary(RegModel.6))
multireg.table <- NULL
multireg.table <- cbind(res$coefficients[,1], confint(RegModel.6),res$coefficients[,2:4])
colnames(multireg.table)[1] <- "Estimate"
colnames(multireg.table) <- gettextRcmdr( colnames(multireg.table))
multireg.table

このRスクリプトを活用し、最初の行のlm()のカッコ内に weights = weight.ATE.GLM.1 を書き入れる。

RegModel.6 <- lm(BM_blast~Anthracyclines, data=ElderlyAML, weights=weight.ATE.GLM.1)
res <- NULL
(res <- summary(RegModel.6))
multireg.table <- NULL
multireg.table <- cbind(res$coefficients[,1], confint(RegModel.6),res$coefficients[,2:4])
colnames(multireg.table)[1] <- "Estimate"
colnames(multireg.table) <- gettextRcmdr( colnames(multireg.table))
multireg.table

このようにして、再度実行すると逆確率重み付け回帰分析が実施できる。

f:id:toukeier:20220404202823p:plain

f:id:toukeier:20220404202915p:plain

標準メニューを使う方法

Rコマンダーの標準メニューの線形モデルを使うと、出力したRスクリプトを修正する作業なしで解析できる。

f:id:toukeier:20220404202258p:plain

こんな風に、カンマで区切り、weights=でIPTWを指定する。

f:id:toukeier:20220404202622p:plain

解析結果は上記と同じものが出力される。

f:id:toukeier:20220404202940p:plain

出力されたRスクリプトを修正するよりも標準メニューを使用するほうが簡単だ。

まとめ

傾向スコアを用いた交絡の調整方法の一つとして逆確率重み付けがある。

この逆確率重み付けを連続データを目的変数にした線形回帰にも使用することができる。

EZRで実行する場合、逆確率重み付け回帰分析は、標準メニューの線形モデルを用いると簡単に実施できる。

EZR公式マニュアル