Pragmatic Clinical Trialプラグマティック臨床試験

プラグマティック臨床試験はさまざまに定義されており、統一された定義はありませんが、例えば、CaliffとSugarmanは、「介入の益、負担、害のバランスについて意思決定者に情報を与えることを主な目的としてデザインされた研究」と定義しています.比較効果研究に包含されるような定義です.

特に重要と思われる特徴は「現実的な状況下での効果を証明する」ことが考えられます.言い換えると実用性が高い臨床試験とも言えます(図1).

図1. Pragmatic Clinical Trials プラグマティック臨床試験。今後ICTを利用して、多面的/全人的で連続的な個人のビッグデータを収集して即時解析が行われるようになる可能性があり、プラグマティック臨床試験が一般化する可能性が考えられます。

また、Pragmatic-explanatory continuum indicator summary (PRECIS)と呼ばれる、臨床試験を評価するツールが作成されています(図2).

図2. プラグマスコープの一つであるPragmatic-explanatory continuum indicator summary (PRECIS)。10個のクライテリアから臨床試験の実用性を評価します。

実用性という観点から、対象者の適格基準、介入の柔軟性、介入サービス提供者の専門性、対照サービスの提供者の専門性、対照介入の柔軟性、アウトカム、参加者のコンプライアンス、サービス提供者のアドヒアランス、アウトカムの一次分析、フォローアップの 厳密さ、これらの 10項目の基準に対して0から5点配点して、評価する ツールです.レーダーチャートの 外側のほう に位置するのは 実用性の高い いわゆる プラグマティック臨床試験 に相当します.中央部分に 小さく 描かれているのは 実用性の低い臨床試験で、いわゆる厳密なランダム化比較試験、説明的臨床試験がここに位置付けられる可能性が高いでしょう.

例えば、参加者の適格基準で、コンプライアンスが低いと思われる人は除外する、アウトカムのリスクが低いと思われる人は除外する、参加者が狭い範囲から募集されている、これらは効果の証明には有利に働きますけれども、実用性は低くなります. つまり 実世界で様々な対象者に使用された場合、予想される効果が得られない可能性が高くなります.

ランダム化比較試験は多くの場合、治療の効果を証明しやすいように設計されています.言い換えると治療効果を証明するのに最適になるようにさまざまな条件が設定されています.そのため、示された効果の大きさが一般的な状況でそのまま再現されるとは限りません.そのような臨床試験はExplanatory trials説明的臨床試験あるいは、効果を証明しやすいよう最適化されているという意味で最適条件試験などとも呼ばれています(図3)。

文献:
Califf RM, Sugarman J: Exploring the ethical and regulatory issues in pragmatic clinical trials. Clin Trials 2015;12:436-41. doi: 10.1177/1740774515598334 PMID: 26374676

Ford I, Norrie J: Pragmatic Trials. N Engl J Med 2016;375:454-63. doi: 10.1056/NEJMra1510059 PMID: 27518663

医薬品評価委員会 Pragmatic Trialsのススメ – 日本製薬工業協会. Link

Thorpe KE, et al: CMAJ 2009;180:E47-57. doi: 10.1503/cmaj.090523 PMID: 19372436

Tosh G, et al: Pragmatic vs explanatory trials: the pragmascope tool to help measure differences in protocols of mental health randomized controlled trials. Dialogues Clin Neurosci 2011;13:209-15. doi: 10.31887/DCNS.2011.13.2/gtosh PMID: 21842618

COVID-NMA initiative

COVID-NMAはWHOとCochraneのサポートを受けて、COVID-19の臨床試験のLiving mappingを提供している国際的なイニシアティブです。ステアリングコミッティにはパリ大学疫学教授Isabelle Boutron他、Cochraneの関係者が多く、フランス、アイルランド、ドイツ、デンマーク、チリ、南アフリカ、イタリアからの委員が含まれています。 Link

Boutron I, Chaimani A, Meerpohl JJ, Hróbjartsson A, Devane D, Rada G, Tovey D, Grasselli G, Ravaud P, COVID-NMA Consortium: The COVID-NMA Project: Building an Evidence Ecosystem for the COVID-19 Pandemic. Ann Intern Med 2020;173:1015-1017. doi: 10.7326/M20-5261 PMID: 32931326

Operating Teamは(カッコ内に人数を示します)Coordination and project management (3)、Editorial advisor (1)、Web development (1)、Screening (4)、Data architecture desing (3)、Data extraction (17)、Analysis (3)、Evidence grading (5)、ROBINS-I assessment (20)、Bias assessment monitoring (7)、Mapping (2)、Data integration (5)、Data visualization (5)、Editorial team (6) とかなり大きな組織で、Cochrane Franceの人が多いですが、多国籍のチームです。

最近の論文で、RとShinyを用いたLiving meta-analysisのためのウェブアプリを発表しています。Evrenoglou T, Boutron I, Seitidis G, Ghosn L, Chaimani A: metaCOVID: A web-application for living meta-analyses of COVID-19 trials. Res Synth Methods 2023;14:479-488. doi: 10.1002/jrsm.1627 PMID: 36772980

世界的なCOVID-19の感染の縮小とともに、2023年からはLiving mappingはCOVID-19ワクチン、Living evidence synthesisはワクチンのブースターの臨床試験についてのみアップデートを行う方針だそうです。

Multi-nomial logistic regression

応答変数(従属変数)が二値変数、例えばある疾患・そうでないで、いくつかの説明変数からそれを推定するモデルを作成したい場合、ロジスティック回帰分析を用いることができます。説明変数は連続変数でも名義変数でも使えます。

応答変数が3つ以上ある場合はMulti-nomial logistic regression analysis多項ロジスティック回帰分析を用いることができます。例えば、診断したい病態が3つあり、各症例で3種類の検査のデータがあるような場合、このデータを解析して、各検査の値に対する係数を算出し、別の症例や検証用の症例のデータに対して、その症例に対する疾患確率を計算することができます。診断したい疾患が3つであれば、それぞれに対する疾患確率の値を3つ得ることができます。実臨床では、ある疾患・そうでないの2つを鑑別することよりも、3つ以上の複数の疾患のどれかを診断するような状況の方がはるかに多いと思います。前者は感度・特異度のパラダイムで処理できますが、後者の場合、感度・特異度の考え方では対処が難しくなります。

想定される疾患・病態が3つ以上あり、検査や診断法が2つ以上あるような場合、Multi-nomial logistic regressionに基づくモデルは役に立つはずです。

Rのパッケージでnnetを用いると、その解析ができます。解析に必要なデータは図1のようなものになります。

図1.Multi-nomial logistic regression用のデータの例。

このようなデータをExcelなどで用意しておきます。なお、ここに示すのは架空のデータです。

nnetはBrian Ripley, William VenablesによるRのパッケージです。 Link

以下Rでスクリプトを実行していきます。変数名は図1のものを用いていますが、実際に図1のデータを解析しているわけではありません。スクリプトと手順を示すのが目的です。それぞれ自分のデータで必要に応じて変数名など変更して実行してください。

#Install packages needed.

packneed=c(“nnet”,”tcltk2″);current=installed.packages();addpack=setdiff(packneed,rownames(current));url=”https://cran.ism.ac.jp/”;if(length(addpack)>0){install.packages(addpack,repos=url)};if(length(addpack)==0){print(“Already installed.”)}

今回取り上げたパッケージ以外に、NeuralNetTools、EffectStars2というパッケージも有用です。今回Multi-nomial logistic regression analysisをnnetパッケージのmultinom()関数で行っていますが、nnetはそれだけでなく、Neural networkを用いる解析もできます。

#Read in packages.

library(nnet)
library(tcltk2)

#Read in data.

train.dat=read.delim(“clipboard”,sep=”\t”,header=TRUE)

#Excelで必要なデータ範囲をコピーしてからRに戻りこのスクリプトを実行します。クリップボードを介して、データが変数train.datに格納されます。Macの場合は、train.dat=read.delim(pipe(“pbpaste”),sep=”\t”,header=TRUE) です。

#Set a reference as a factor variable.

train.dat$Diagnosis = as.factor(train.dat$Diagnosis)
train.dat$Diagnosis = relevel(train.dat$Diagnosis, ref = “D1”)

ベースとなるDiagnosisを設定します。その際に、数値ではなくfactorとして取り扱うので、as.factor()関数を用いています。ref引数で設定するDiagnosisは通常は対照となるような診断・病態です。

#Multi-nomial logistic regression analysis.

multinom_model = multinom(Diagnosis ~ Test1+Test2+Test3, data = train.dat)

診断 ~ 説明変数1 + 説明変数2 + 説明変数3の様にformulaを記述します。

#Show the results: Intercepts, coefficients for explanatory variables.

summary(multinom_model)

#P values for explanatory variables.

z=summary(multinom_model)$coefficients/summary(multinom_model)$standard.errors
P_value=(1-pnorm(abs(z),0,1))*2
P_value

summary()関数ではP値は計算されないので、このようなスクリプトで計算しています。

#Odds ratios for explanatory variables (exponentials of the coefficients).

exp(coef(multinom_model))

#Prediction the diagnosis with explanatory variables for each case with the training data.

(predDiagnosis=predict(multinom_model, newdata=train.dat, type=”probs”))

ここでは、トレーニングに用いたデータに対して、Predictionを行っています。適合度が高いので、正診率は高くなります。

#Prepare the result data to be saved.

results=cbind(train.dat,predDiagnosis)

#Save the result data as a text file (tab-separated).

filnam=tclvalue(tkgetSaveFile(initialfile=”.txt”,filetypes=”{{Text Files} {.txt}} {{All files} *}”));if(filnam!=””){write.table(results,filnam,sep=”\t”,row.names=FALSE,col.names=TRUE)}

ファイル名を設定して任意のフォルダーにテキストファイルとして、元のデータとPredictionの結果を合わせてタブ区切りのテーブルの形式で保存します。

#Calcuating disease probabilities for individual explanatory variable data.
Set data for the case:
an example

Test1=3
Test2=14
Test3=5
case=cbind(Test1,Test2,Test3)
row.names(case)[1]=”case”

任意の検査結果の場合の、診断の推定を行います。

#Output Diagnosis class.

(CasePredicted=predict(multinom_model, newdata = case, type=”class”))

3つの診断の内、疾患確率が一番高いものが出力されます。

#Output probabilities.

(CasePredicted=predict(multinom_model, newdata = case, type=”probs”))

3つの診断のそれぞれの疾患確率が出力されます。

診断のPredictionは上記のpredict()関数を用いてできますが、自分でスクリプトを書いて計算したい場合は以下の様にします。

Multi-nomial logistic regressionの結果、Reference diagnosis以外のDiagnosisに対する切片、係数の値が得られます。これらの値を用いて、各症例の疾患確率を計算します。切片、係数の値は、coef(multinom_model)でデータフレームとして得られます。そこから、必要な切片、係数の値を読み出して、その症例のそれぞれの検査結果の値にそれぞれの対応する係数を掛け算して、総和を求め、さらに切片の値を加算します。得られた値のExponentialを求めます。それを各Diagnosisについて計算し、それらの総和を求め、さらに1を加算します。その値で、各DiagnosisのExponentialの値を割り算すると、各Diagnosisに対する疾患確率が得られます。加算する1はReference diagnosisの切片と係数を0に設定するためで、0のExponentialが1になるためです。

検査が3つ、すなわち、説明変数が3つの場合で、その症例の検査結果がx1, x2, x3でああれば、
診断iについて、yi = ai + b1i*x1 + b2i*x2 + b3i*x3
P(診断i) = exp(yi)/(1 + Σexp(yi))

通常のLogistic regressionの場合は、y = a + b1*x1 + b2*x2 + b3*x3で、
P(診断)=1/(1 + exp(-y)) ですから計算法が違います。

文献
Ciaburro G, Venkateswaran B: Neural Networks with R: Smart models using CNN, RNN, deep learning, and artificial intelligence principles. 2017, Packt Publishing, Birmingham, UK.

Xu J: Modern Applied Regression. 2023, CRC press, Taylor & Francis Group.

Multi-nomial logistic regression with R. R-bloggers.

Narrative synthesis in systematic reviews

Narrative reviewとSystematic reviewは対比されてNarrative reviewは系統だった手法が用いられず著者の主観が入り込むから、内容・結論はあまり科学的とは言えないという風に思う人が多いかもしれません。

Narrative reviewではなくNarrative synthesisはどうでしょうか?そもそもNarrativeナラティブとは何でしょうか?Popay Jらは”ストーリー”を文章で述べることがNarrativeの特徴だと言っています。そうすると、Narrative sysnthesisとは?

•システマティックレビューと複数の研究からの知見の統合の結果を言葉と文章を用いて表すアプローチ。
•統計学的なデータを扱うこともあるが、含める研究の知見に関する”ストーリー“を文章で述べる。
•システマティックレビューで用いられるプロセスであるが、介入の効果に関連したクエスチョンに限定されない。

Popay, J.,et al. : Guidance on the conduct of narrative synthesis in systematic reviews. A product from the ESRC (Economic and Social Research Council) methods programme Version, 2006.ではこのように述べられています。Link

レビューをめぐる用語はたくさんあります。以前SWiM (Synthesis without meta-analysis)について紹介したことがありますが、それ以外にも以下のような用語があります。

Evidence synthesisとは:
•システマティックレビューを包含するがそれだけに限定されない。
•ランダム化比較試験、観察研究、質的研究、医療経済評価などすべての必要な研究が用いられる。
•結合された研究の結果は、広範な介入、政策の有効性、費用効果、適切さ、実行可能性に関する判断に情報を与える。
•特定の健康状態の原因や社会的問題に関する知識の現状など様々なタイプの多くのクエスチョンを取り扱う。
•健康サービスの研究、技術開発や都市計画の社会科学など多様な研究分野で行われる。

Evidence synthesisはエビデンスの統合ということですが、「ランダム化比較試験、観察研究、質的研究、医療経済評価などすべての必要な研究が用いられる」という点では、またその他の点からも、医療における意思決定の根拠として用いるのに一番適合する概念のように思えます。

Systematic reviewはInstitute of Medicine (IOM)(現National Academy of Medicine, NAM)の定義では、「特定の問題に絞って、類似したしかし別々の研究の知見を見つけ出し、選択し、評価し、まとめるために、明確で計画された科学的方法を用いる科学的研究。別々の研究からの結果の定量的統合(メタアナリシス)を含むことも含まないこともある」とされています。”明確で計画された科学的方法を用いる”という点から、一定の枠組みで一定の手順で複数の研究をまとめるということが重視され、それに合わせるのが難しい課題はSystematic reviewの対象から外される傾向が生まれてしまいます。その結果、医療における意思決定に、確実性の低いエビデンスは活用されないことになってしまいます。

Systematic reviewの本質は何か?よく考えることが必要だと思います。Cochrane RoB 2を用いたからSystematic review、GRADEアプローチを用いたからSystematic review、IOMのFinding What Works in Healthcare: Standards for Systematic Reviewsに従ったからSystematic reviewだというわけでないでしょう。いずれの場合も、主観的な判断が必要な部分がありますし、再現性が保証されるわけではありません。