SGプロシジャとGTLによるグラフの作成と
ODS PDFによる統合解析帳票の作成
~TQT試験における活用事例~
今日のお話
1.
SGプロシジャとGTL
SGプロシジャの概要
SGプロシジャの使用方法
GTLの使用方法
SGプロシジャとGTLの応用例
2.
TQT試験における活用事例
TQT試験の概要
活用事例の試験デザイン及びテストデータ
TQT試験で求められる解析
今日のお話
1.
SGプロシジャとGTL
SGプロシジャの概要
SGプロシジャの使用方法
GTLの使用方法
SGプロシジャとGTLの応用例
2.
TQT試験における活用事例
TQT試験の概要
活用事例の試験デザイン及びテストデータ
TQT試験で求められる解析
ODS PDFを用いた簡易解析帳票の作成
SGプロシジャの前に・・・
ODS Graphics
– ODS Graphicsステートメントとともに統計プロシジャを実行すると、
自動的に綺麗なグラフを作成してくれる便利な機能
– V9.2ではほとんどのメジャーな統計プロシジャに対応している
– とにかく指定が簡単
ODS Graphics on ;
<Stat Procedures>
SGプロシジャの前に・・・
ODS Graphics
– ODS Graphicsステートメントとともに統計プロシジャを実行すると、
自動的に綺麗なグラフを作成してくれる便利な機能
– V9.2ではほとんどのメジャーな統計プロシジャに対応している
– とにかく指定が簡単
ods html ;
ods graphics on ;
proc reg ;
model weight=age ;
run ;
ods graphics off ;
ods html close ;
SGプロシジャ(Statistical Graphics Procedure)の概要
SGプロシジャの種類
SGプロシジャ 概要
SGPLOT
様々な種類のグラフを作成する。SGプロシジャのメ
インとなるプロシジャ。
SGPANEL
層ごとに分割してグラフを作成する(作成できるグ
ラフの種類はSGPLOTプロシジャとほぼ同様)。
SGSCATTER
散布図の作成に特化したプロシジャで、散布図行列
も作成できる。
SGRENDER
GTLでカスタマイズしたグラフテンプレートを読み
込んでグラフを作成する。
テストデータ
SGPLOTプロシジャ
メインとなるプロシジャ
– 数多くのグラフを作成可能
*** 主なステートメント ;
proc sgplot data=<dataset> ;
<graphs> ;
xaxis ;
yaxis ;
refline ;
keylegend ;
quit ;
ステートメント 効果 <graphs> 各グラフの定義 xaxis 横軸の定義SGPLOTプロシジャ
メインとなるプロシジャ
– 数多くのグラフを作成可能
グラフの種類 ステートメント
バンド幅 BAND X= variable | Y= variable UPPER= numeric-value | numeric-variable
LOWER= numeric-value | numeric-variable </option(s)>; 密度推定 DENSITY response-variable </option(s)>;
ドットプロット DOT category-variable </option(s)>;
楕円グラフ ELLIPSE X= numeric-variable Y= numeric-variable </option(s)>; 棒グラフ HBAR</VBAR> category-variable < /option(s) >
箱ひげ図 HBOX</VBOX> response-variable </option(s)>; ヒストグラム HISTOGRAM response-variable < /option(s)> 折れ線グラフ HLINE</VLINE> category-variable < /option(s)>
Loess曲線 LOESS X= numeric-variable Y= numeric-variable </option(s)>; ニードルプロット NEEDLE X= variable Y= numeric-variable </option(s)>;
Penalized B-spline curve PBSPLINE X= numeric-variable Y= numeric-variable </option(s)>; 回帰直線 REG X= numeric-variable Y= numeric-variable </option(s)>;
SGPLOTプロシジャの使用例1
平均値・SDの推移図
– vlineで推移図を描画
– statで平均値、limitstatでSDを指定
– groupで投不群を指定、markerattrsでシンボルを指定
proc sgplot data=TEST ;vline VISIT / response = VAL group = TREAT stat = mean limitstat = stddev numstd = 1 markers markerattrs = (symbol=circlefilled) ; run ;
SGPLOTプロシジャの使用例2
散布図・回帰直線
– regで散布図・回帰直線を描画
– x、yで変数を指定、clm、cliで信頼区間と予測区間を指定
proc sgplot data=TEST ;where VISIT = 2000 ;
reg x=VAL y=VAL2 / clm cli ; run ;
SGPANELプロシジャ
層ごとに分割してグラフを作成する
– グラフの種類はSGPLOTプロシジャとほとんど同じ
*** 主なステートメント ;
proc sgpanel ;
panelby <変数1,2...> </options>;
<graphs> ;
rowaxis ;
colaxis ;
refline ;
keylegend ;
quit ;
ステートメント 効果 panelby 層の指定・レイアウトの指定 <graphs> 各グラフの定義 rowaxis 縦軸の定義SGPANELプロシジャの使用例1
平均値・SDの推移図
– panelbyで投不群・性別を指定、vlineで推移図を描画
– statで平均値、limitstatでSDを指定、markerattrs、lineattrsでシンボル、線を指定
proc sgpanel data=TEST ;panelby TREAT GENDER /
layout = lattice novarname ;
vline VISIT / response = VAL stat = mean limitstat = stddev numstd = 1 lineattrs = (color=red) markers markerattrs = (color=red symbol=circlefilled) ; rowaxis label = "Test Results" ; run ;
SGPANELプロシジャの使用例2
ヒストグラム・密度推定
– panelbyで性別を指定
– histogramでヒストグラムを描画
– density&typeオプションで密度推定を指定
proc sgpanel data=TEST ;panelby GENDER / layout=panel ;
histogram VAL ; density VAL / type = normal name = "aaa" legendlabel = "Normal" ; density VAL / type = kernel name = "bbb" legendlabel = "Kernel" ; keylegend "aaa" "bbb" ; run ;
SGSCATTERプロシジャ
散布図関連のグラフを作成する
– 散布図及び散布図行列の作成に特化したプロシジャ
*** 主なステートメント ;
proc sgscatter ;
plot
y*x
;
compare x=
variables
y=
variables
;
matrix
variables
;
quit ;
ステートメント 効果 plot 散布図作成 compare 軸を共通利用して複数の散布図作成 matrix 散布図行列を作成SGSCATTERプロシジャの使用例1
散布図・回帰直線を横並びに出力
– compareでx軸(複数指定) 、y軸変数を指定
– regで回帰直線、clm、cliで信頼区間と予測区間を指定
proc sgscatter data=TEST ;compare y=VAL x=(VAL2 VAL3) / reg=(clm cli
lineattrs=(color=blue)) ; run ;
SGSCATTERプロシジャの使用例2
散布図行列
– matrixで変数を指定
– diagonalで対角部分の出力を指定(ヒストグラム、正規分布、カーネル密度推定)
proc sgscatter data=TEST ;matrix VAL VAL2 VAL3 /
diagonal=(histogram normal kernel) ; run ;
SGRENDERプロシジャ
GTLで作成したテンプレートでグラフを作成
– templateでテンプレートを読み込む
– テンプレートはGTLで作成
– Dynamic変数を指定することにより、テンプレートの再利用が可能
proc sgrender data = <dataset name>
template = <template name> ;
*--- Templateを読み込む ;
dynamic <dynamic-variable> = "<variable>" ;
*--- Dynamic変数を指定 ;
run ;
ステートメント 効果
template 読み込むテンプレートを指定
GTL(Graph Template Language)
ユーザー独自のテンプレートを定義
– Templateプロシジャ内にGTLを記述する
proc template ;
define statgraph
template-name
;
*--- グラフテンプレート定義開始 ;
dynamic
variables
;
*--- dynamic変数定義 ;
begingraph ;
*--- グラフ定義開始 ;
layout
layout
</options> ;
*--- レイアウト定義 ;
rowaxes ; rowaxis </options> ; endrowaxes ;
*--- 縦軸定義 ;
columnaxes ; columnaxis </options> ; endcolumnaxes ;
*--- 横軸定義 ;
layout overlay ;
*--- 各グラフ定義開始 ;
Graph Definition
endlayout ;
*--- 各グラフ定義終了 ;
endlayout ;
*--- レイアウト定義終了 ;
endgraph ;
*--- グラフ定義終了 ;
end ;
*--- グラフテンプレート定義終了 ;
run ;
GTL(Graph Template Language)の使用例
散布図・回帰直線と棒グラフを並べて出力
– グラフ名はSGプロシジャ内と異なる
proc template ;define statgraph _GTEST ; *--- テンプレート開始 ;
begingraph ; *--- グラフ定義開始 ;
layout lattice / columns=2 rows=1 columngutter=5px
columnweights=(.5 .5) rowdatarange=union ; *--- レイアウト開始 ;
layout overlay ; *--- 1個目のグラフ開始 ;
modelband "clm" ; *--- 信頼区間 ;
modelband "cli" / outlineattrs=(color=blue pattern=2)
display=(outline) ; *--- 予測区間 ;
scatterplot x=VAL y=VAL2 ; *--- 散布図 ;
regressionplot x=VAL y=VAL2 / cli="cli" clm="clm" ; *--- 回帰直線出力 ;
endlayout ; *--- 1個目のグラフ終了 ;
layout overlay ; *--- 2個目のグラフ開始 ;
barchart x=CAT y=VAL2 / stat=mean orient=vertical ; *--- 棒グラフ ;
endlayout ; *--- 2個目のグラフ終了 ;
endlayout ; *--- レイアウト終了 ;
GTL(Graph Template Language)の使用例
散布図・回帰直線と棒グラフを並べて出力
– グラフ名はSGプロシジャ内と異なる
layout overlay ; modelband "clm" ; modelband "cli" / outlineattrs=(color=blue pattern=2) display=(outline) ;scatterplot x=VAL y=VAL2 ; regressionplot x=VAL y=VAL2 / cli="cli" clm="clm" ;
endlayout ;
layout overlay ;
barchart x=CAT y=VAL2 /
stat=mean orient=vertical ;
SGプロシジャとGTLの応用例1
臨床検査値等の経時データの平均値推移図
– 平均値±標準偏差のプロットを作成する。
– 最終時点のみ線を引かず、黄色の網掛けを出力する。
– 投不群毎に色分けし、時点をずらして出力する。
proc sort data=TEST ; by VISIT ; run ;
*--- 各時点・投与群要約統計量算出 ;
proc summary data=TEST nway ;
class TREAT ; by VISIT ; var VAL ;
output out = _SUM(drop=_FREQ_ _TYPE_) mean = _MEAN stddev = _STD ; run ;
data _SUM_G ; set _SUM ;
*--- VISIT2には最終時点は格納しない ;
if VISIT <= 2060 then VISIT2 = VISIT ;
_STDU = _MEAN + _STD ; *--- Mean + SD ;
_STDL = _MEAN - _STD ; *--- Mean - SD ;
SGプロシジャとGTLの応用例1
臨床検査値等の経時データの平均値推移図
– series: 平均値のプロット(Week 6まで)
– scatter: 平均値±標準偏差のプロット(線なし、Week 8まで)
– band: 最終時点のみ線を引かず、黄色の網掛けを出力する。
title "Mean-SD Plot" ; proc sgplot data=_SUM_G ;
*--- BandでWeek 8に網かけを出力 ;
band y=_MEAN lower=2070 upper=2090 / transparency = 0.5
fill fillattrs = (color=yellow) ;
*--- SeriesでWeek 6まで線を結ぶ ; series x=VISIT2 y=_MEAN /
group = TREAT lineattrs = (pattern=1) name = "aaa" ; *--- ScatterでMeanとSDを描画 ;
scatter x=VISIT y=_MEAN / group = TREAT
yerrorlower = _STDL
yerrorupper = _STDU
SGプロシジャとGTLの応用例2
臨床検査値等の投不群間差及び信頼区間プロット
– ttestプロシジャで各時点の群間差及び95%信頼区間を算出
– scatter、xerrorlower、xerrorupperで群間差・95%CIをプロット
ods output Conflimits=_CLM(where=(method="Pooled")) ; proc ttest data=TEST ;by VISIT ; var VAL ; class TREAT ; run ;
ods output close ;
proc sgplot data=_CLM ; scatter x=Mean y=VISIT / markerattrs
= (symbol=circlefilled color=black)
xerrorlower = LowerCLMean xerrorupper = UpperCLMean
errorbarattrs = (color=black) ;
xaxis values=(-12 to 4 by 2) offsetmin=0.05 ; yaxis offsetmin=0.05 ;
refline VISIT / axis=y lineattrs=(pattern=1) transparency=0.6 ;
SGプロシジャとGTLの応用例3
有害事象の発現率及びリスク比プロット
– GTLによりテンプレートを作成し、SGRENDERプロシジャで呼び出してグラフを出力
– 左にAEの各群の発現率プロット・右側にリスク比+信頼区間のプロット
– あらかじめAEの発現率、リスク比と信頼区間を格納したデータセットを作成しておく!
各群の発現率(%)
リスク比(信頼下限・上限)
有害事象
SGプロシジャとGTLの応用例3
有害事象の発現率及びリスク比プロット
– GTLによりテンプレートを作成し、SGRENDERプロシジャで呼び出してグラフを出力
– 左にAEの各群の発現率プロット・右側にリスク比+信頼区間のプロット
SGプロシジャとGTLの応用例3
Graphical Template Language (GTL)
proc template ;
define statgraph _AEPCTRR ; *--- テンプレート定義 ;
dynamic VAR1 VAR2 EST LOWER UPPER TITLE VLABEL HLABEL ; *--- dynamic変数定義 ;
begingraph ; *--- グラフ定義開始 ;
entrytitle TITLE ;
layout lattice / columns=2 rows=1 columngutter=5px
columnweights=(.5 .5) rowdatarange=union ; *--- レイアウト定義;
rowaxes ; rowaxis / label=VLABEL ; endrowaxes ; *--- 縦軸定義 ;
columnaxes ; columnaxis / label=HLABEL ; endcolumnaxes ; *--- 横軸定義 ;
layout overlay ; *--- 1個目のグラフ定義 ;
referenceline y=PT_NAME / lineattrs=(color=lightgray pattern=2) ; scatterplot x=VAR1 y=PT_NAME / markerattrs=(symbol=trianglefilled)
name="p" legendlabel="Placebo" ; *--- 発現率1 ;
scatterplot x=VAR2 y=PT_NAME / markerattrs=(symbol=square)
name="a" legendlabel="TAK-XXX Xmg"; *--- 発現率2 ;
discretelegend "p" "a" / valign=bottom ; endlayout ;
layout overlay /
xaxisopts=(linearopts=(viewmin=0 viewmax=10
tickvaluesequence=(start=0 end=10 increment=1))) ; *--- 2個目のグラフ定義 ;
referenceline x=1 / lineattrs=(color=lightgray pattern=1) ; *--- 縦線 ;
referenceline y=PT_NAME / lineattrs=(color=lightgray pattern=2) ; *--- 横線 ;
scatterplot x=EST y=PT_NAME /
errorbarattrs = (pattern=1 color=black)
markerattrs = (color=black symbol=circlefilled)
発
現
率
リ
ス
ク
比
SGプロシジャとGTLの応用例3
SGRENDERプロシジャ
– templateでテンプレートを読み込んでグラフを作成
proc sgrender data=AE template=_AEPCTRR ; *--- 定義したテンプレートを読み込んでグラフ出力 ;
label _G_1="Percentage" Value='Relative Risk with 95% CI' ; dynamic VAR1="_G_1" VAR2="_G_2" EST="Value" LOWER="LowerCL" UPPER="UpperCL"
HLABEL="Percentage and Relative Risks" VLABEL="Preferred Term"
TITLE="Percentages and Relative Risks" ; *--- Dynamic変数指定 ;
run ;
SGプロシジャとGTLの応用例3
出力結果(再掲)
発
現
率
リ
ス
ク
比
layout lattice / columns=2 rows=1 columngutter=5px columnweights=(.5 .5) rowdatarange=union ;
今日のお話
1.
SGプロシジャとGTL
SGプロシジャの概要
SGプロシジャの使用方法
GTLの使用方法
SGプロシジャとGTLの応用例
2.
TQT試験における活用事例
TQT試験の概要
活用事例の試験デザイン及びテストデータ
TQT試験で求められる解析
TQT試験の概要
TQT試験とは(下線部はE14ガイドライン抜粋)
– 薬物による心室の再分極遅延の可能性を評価するための臨床試験
⇒つまり、トルサード・ド・ポワンツ(以下TdP)発生のバイオマ
ーカーであるQT間隔の延長と薬物の関連性を評価する臨床試験
– 概ね全身に影響を及ぼす新医薬品に対して適用される。
– 平成22年11月1日以後に申請される医薬品に添付される資料は、
本ガイドラインに基づいたものであること。
⇒適用対象となった新医薬品については、ICH-E14ガイドラインに
従った臨床試験を実施する必要がある。
– 海外臨床試験データ等の利用可能性については、薬剤の特性により
個別に判断される
– 民族差についてのデータは限られているが、民族的要因はQT/QTc
評価試験の成績に影響することはないと考えられている。
⇒国内での実施の是非については、個々の薬剤についてPMDAと相
TQT試験の概要
TQT試験の位置づけ
– この試験は通常、健康な志願者(丌整脈の危険性が高い集団ではな
く)を対象に実施され、医薬品開発の後期に、目標とする患者集団
において当該薬剤のQT/QTc延長作用を入念に調べる必要性がある
か否かを決定するために用いられる。
⇒開発の早期に健常人を対象に実施される
⇒TQT試験の結果により、開発の後期段階において心電図に関して
収集すべき情報が異なる
– QT/QTc間隔が著明な延長を示す場合には、丌整脈が実際に記録さ
れたか否かにかかわらず、薬剤の丌承認、あるいは臨床開発の中止
の根拠となり得る。
– 薬剤のQT/QTc間隔延長の可能性に関して適切な臨床評価を行って
いない場合も同様に、製造販売承認が遅れたり、拒否されたりする
TQT試験の概要
TQT試験のデザイン
– クロスオーバー試験の利点
• クロスオーバー試験では被験者自らが対照ともなるため、個体
間変動に関連する差のバラツキが少なく、一般的に並行群間比
較試験より少人数の被験者で実施できる。
• クロスオーバー試験では、被験者ごとのデータに基づく心拍数
での補正がし易い場合がある。
– 並行群間比較試験が好ましい状況
• 消失半減期が長く、定常状態あるいは完全な消失を達成するの
に長い時間間隔が必要な薬物の場合
• 持ち越し効果が他の理由により顕著な場合、例えば非可逆的な
受容体への結合、または活性代謝物の半減期が長いなどの理由
による場合
• 複数用量群または多くの治療群を比較する場合
TQT試験の概要
TQT試験の評価及び解釈
– 治療において予想される最大曝露量の相当倍までを使用してその薬
物を検査するべきである。
– 最高血中濃度(Cmax)となる周辺の時点で心電図を記録するよう
注意すべきである。
⇒プラセボ群、被験薬群(臨床用量、最高用量)及び陽性対照群の
4群の構成が推奨され、本稿でも同様の群構成を想定する。
– QT/QTc評価試験が陰性とは、その薬剤のQTc間隔への時間を一致
させた平均効果の最大値に対する95%片側信頼区間の上限が10ms
を下回る場合を指す。
⇒本稿では、95%片側信頼区間の代わりに両側90%信頼区間を算
出して同様の解釈を行う。陽性、陰性は上記のように定義されるが
、「陽性なら即開発中止」ではなく、その後の開発段階で収集する
本活用事例の試験デザイン
本活用事例の試験デザインの要約
ホルター心電図データ収集ポイント(例)
– Day 1の9:00に投不する場合
項目
内容
試験デザイン
並行群間比較試験
主要評価項目
時間を一致させたQTcF間隔のベースラインからの変化量の被験薬群とプラセ
ボ群の平均値の差
投不方法
単回投不(朝1回投不)
群構成
Placebo、Active 1(臨床用量)、Active 2(最高用量)、Positive Control(陽
性対照)
症例数
各群50例
評価時点(QT) Day -1(投不前): 投不23.5,23,22,20,18,16,14,12,8,0.5時間前
Day 1(投不後): 投不0.5,1,2,4,6,8,10,12,16,23.5時間後
本活用事例のテストデータ
テストデータ(データセットTQT)の構造
– 各被験者・評価時点ごとに3レコードが格納されている
変数名 内容 イメージ ID 被験者ID VISIT 評価時点(100番台:投 不前,200番台:投不後) SEQ 連番 TREAT 投不群(1:プラセボ, 2:臨床用量,3: 最高用量 ,4:陽性対照) GENDER 性別(1:男性,2:女性)TQT試験で求められる主な解析
QT間隔の補正式について
– QT間隔は心拍数と負の相関を有するので、ベースラインと比較し
て延長したか否かを決定するため、測定されたQT間隔は一般的に
心拍数で補正される。
– 最適な補正法については意見が分かれているため、全ての申請にお
いて、QT及びRR間隔の未補正データ、心拍数のデータ並びに
Bazett補正法及びFridericia補正法を用いて補正したQT間隔データ
を提出するとともに、また他の式を用いて補正したQT間隔データ
があればそれも提出しなければならない。
– Bazett補正法は一般に、増加した心拍数では過大な補正、毎分60
拍を下回る心拍数では過小な補正となることから、理想的な方法で
はない。Fridericia補正法は、そのように心拍数が変化する被験者
においてはBazett補正法より正確である。
⇒QTcFを主要評価項目とし、他の補正式の解析結果も提出する(
TQT試験で求められる主な解析
QT間隔の補正式について
– 主な補正法
補正法
補正式
備考
Fridericia補正法 QTc = QT/RR
0.33E14ガイドラインで推奨されている。
Bazett補正法
QTc = QT/RR
0.5理想的な補正法ではないとされているが、結果
を提示する。
個体別補正法
QTcI
i= QT/RR
λiλ
iは各被験者の以下の回帰式における回帰係数
log(QT) = a
i+λ
i*log(RR)
試験別補正法
QTcSS = QT/RR
λλは全被験者のλ
iの中央値または平均値
TQT試験で求められる主な解析
QT間隔の補正式について
– QT間隔の補正式の算出及び当てはまりを確認する。
data _QTREG ;
set TQT(where=(VISIT < 201)) ; *--- 投与前に絞込み ; if RR > 0 then _LOGRR = log(RR/1000) ; *--- msec=>sec ; if QT > 0 then _LOGQT = log(QT) ;
run ;
*--- QTcIの回帰係数 ;
proc reg data=_QTREG outest=_EST(keep=ID _LOGRR rename=(_LOGRR=_QTcIEXP)) ; by ID ; model _LOGQT = _LOGRR ;
run ; quit ;
*--- QTcSSの回帰係数(QTcIの中央値) ;
proc summary data=_EST ; var _QTcIEXP ;
output out=_OUTSS(drop=_TYPE_ _FREQ_) median=_QTcSSEXP ; run ;
*--- QTcF, QTcB, QTcQTcI, QTcSSの算出 ; data TQT_C ;
merge TQT _EST ; by ID ; if _n_=1 then set _OUTSS ; QTcF = QT / (RR/1000)**0.33 ;
TQT試験で求められる主な解析
QT間隔の補正式について
– SGSCATTERプロシジャで各QT/QTcの補正方法の当てはまりを確認
– QTcB間隔に比べて、QTcF間隔やQTcI間隔ではQT間隔が適切に補正され
ている。
*--- QT, QTcF, QTcB, QTcQTcI, QTcSSの対数変換 ; data _QTcCHK ; set TQT_C ; array _QTc{*} QT QTcF QTcB QTcI QTcSS ;array _LOGQTc{*} _LOGQT _LOGQTcF _LOGQTcB _LOGQTcI _LOGQTcSS ; if RR > 0 then _LOGRR = log(RR/1000) ;
do I = 1 to dim(_QTc) ;
if _QTc{I} > 0 then _LOGQTc{I} = log(_QTc{I}) ; end ;
label _LOGRR="Log(RR)" _LOGQT="Log(QT)"
_LOGQTcF="Log(QTcF)" _LOGQTcB="Log(QTcB)" _LOGQTcI="Log(QTcI)" _LOGQTcSS="Log(QTcSS)" ; run ;
TQT試験で求められる主な解析
中心傾向の解析
– 被験薬がQT/QTc間隔へ不える作用の解析は、最も一般的には、時
間を一致させた被験薬群とプラセボ群の平均値の差(ベースライン
値による調整後)の、収集の全期間を通じた最大値を用いて行われ
る。
⇒ΔQT/QTcを従属変数、性別と投不群を独立変数、対応する
QT/QTc間隔のベースライン値を共変量とした共分散分析モデルに
基づいて評価を行い、全ての時点において90%CIの上限が10msを
下回れば試験は陰性。
ΔQTc = μ + Treatment + Baseline + Gender + ε
– (分析感度については)効果が5msより大きい(即ち、片側95%
信頼区間の下限>5ms)陽性対照を用いる方法。
⇒上記同様のモデルを用いて、少なくとも1時点において調整済み
平均値の群間差の片側95%信頼区間の下限が5msを超える場合に
、当該試験において5ms程度のQT延長を検出できる分析感度が証
TQT試験で求められる主な解析
中心傾向の解析
– 調整済み平均値の群間差及び両側90%CIを算出
ΔQTc = μ + Treatment + Baseline + Gender + ε
*--- データセットTQTよりベースラインからの変化量を算出しておく ; ods output diffs=_DIFF ;
proc mixed data=TQTMAIN ; where _NAME_="QTcF_M" ; by _NAME_ VISIT ;
class TREAT GENDER ;
model _DIFF = TREAT _BASE GENDER / solution ; lsmeans TREAT / diff=control("1") cl alpha=0.1 ; run ;
ods output close ;
*--- 計算結果出力用データ作成 ; data _DIFF2 ;
set _DIFF ;
X1="Estimates" ; X2=" SE" ;
TQT試験で求められる主な解析
中心傾向の解析
TQT試験で求められる主な解析
中心傾向の解析
– 調整済み平均値の群間差及び両側90%CIのフォレストプロット
– scatter + markercharオプションで値そのものをシンボルとして出力する
– offsetmin, offsetmaxオプションで各グラフの余白を調整
options nobyline ;title "#BYVAL1 #BYVAR2: #BYVAL2 " ; proc sgplot data=_DIFF2 noautolegend ; by _NAME_ TREAT ;
scatter x=Estimate y=VISIT /
xerrorlower=Lower xerrorupper=Upper
markerattrs=(color=black symbol=circlefilled) ;
scatter x=x1 y=VISIT / x2axis markerchar=Estimate ; scatter x=x2 y=VISIT / x2axis markerchar=StdErr ; scatter x=x3 y=VISIT / x2axis markerchar=DF ; scatter x=x4 y=VISIT / x2axis markerchar=Lower ; scatter x=x5 y=VISIT / x2axis markerchar=Upper ;
refline -5 0 5 10 / axis=x lineattrs=(pattern=2) ; refline 20 / axis=x lineattrs=(pattern=1) ;
TQT試験で求められる主な解析
中心傾向の解析: フォレストプロット
xaxis values=(-10 to 20 by 5) offsetmax=0.4 ; scatter x=x1 y=VISIT / x2axis markerchar=Estimate ; scatter x=x2 y=VISIT / x2axis markerchar=StdErr ; scatter x=x3 y=VISIT / x2axis markerchar=DF ; scatter x=x4 y=VISIT / x2axis markerchar=Lower ; scatter x=x5 y=VISIT / x2axis markerchar=Upper ;scatter x=Estimate y=VISIT /
xerrorlower=Lower xerrorupper=Upper markerattrs =(color=black symbol=circlefilled) ;
markercharは有用!!
TQT試験で求められる主な解析
中心傾向の解析:結果
– 臨床用量:
陰性
、最高用量:
陽性
、陽性対照:
分析感度有
TQT試験で求められる主な解析
薬物濃度とQT/QTc間隔の関連性の検討
– 薬剤濃度とQT/QTc間隔の変化との関係が確立されれば、心室再分
極を評価する試験の計画及び解釈に役立つ情報がさらに得られるで
あろう。この領域では、現在活発に研究が行われている。
• ΔQT/QTcと薬物濃度の推移図及び散布図
• ΔQT/QTcを応答変数、薬物濃度を固定効果、被験者を変量効
果とした混合効果モデルを用いて、各被験薬群の被験者のCmax
の中央値にそれぞれ対応する各ΔQT/QTc の点推定値、標準誤
差及び両側90%信頼区間をそれぞれ算出する。
ΔQTc = μ + β*Concentration + γ*Subject + ε
Concentrationは薬物濃度、Subjectは被験者を表す。
• ヒステリシス(薬物濃度とΔQT/QTcの変化のずれ)の有無の
確認
*--- 薬物濃度の平均値推移図 ; proc sgplot data=PKECG ;
where _NAME_="QTcF_M" and TREAT in(2,3) ; vline TIME / response=CONC group=TREAT stat=mean limitstat=clm alpha=0.1
markers markerattrs=(symbol=circlefilled) lineattrs=(pattern=1) ;
xaxis display = all
values = (0.5 1 2 to 12 by 2 16 23.5) type = linear ;
format TIME _TIMEF. ; run ;
*--- ΔQTcの平均値推移図 ; proc sgplot data=PKECG ;
where _NAME_="QTcF_M" and TREAT in(2,3) ; vline TIME / response=_DIFF group=TREAT stat=mean limitstat=clm alpha=0.1
markers markerattrs=(symbol=circlefilled) lineattrs=(pattern=1) ;
TQT試験で求められる主な解析
薬物濃度とQT/QTc間隔の関連性の検討
*--- 時点ごとの薬物濃度とQTcF変化量の平均値の算出 ; proc sort data=PKECG ;
by TIME TREAT ; run ;
proc summary data=PKECG ;
where _NAME_="QTcF_M" and TREAT in(2,3) ; by TIME TREAT ;
var CONC _DIFF ;
output out=_OUTH(drop=_TYPE_ _FREQ_) mean=_MEAN_C _MEAN_D ;
run ;
*--- ヒステリシスの有無の確認 ; proc sgplot data=_OUTH ;
series x=_MEAN_C y=_MEAN_D /
group=TREAT lineattrs=(pattern=1) markers
markerattrs=(symbol=circlefilled) ;
xaxis display=all type=linear ; label _MEAN_C="Mean Concentration"
TQT試験で求められる主な解析
薬物濃度とQT/QTc間隔の関連性の検討
*--- 薬物濃度とΔQTcの散布図 ; proc sgplot data=PKECG ;
where TREAT in (2,3) and _NAME_="QTcF_M" ; scatter x=CONC y=_DIFF /
group = TREAT
markerattrs = (symbol=circlefilled) ;
run ;
data _PKMIXED ;
set _PKECG(where=(TREAT in(2,3) and _NAME_="QTcF_M")) ; _DUM = 1 ; *--- lsmeansステートメント用 ; run ;
*--- 混合効果モデル:CMAXの中央値をマクロ変数に入れておく ; ods output LSMeans=_LSM
(keep=CONC Estimate Stderr DF Lower Upper) ; proc mixed data=PKMIXED ;
class ID _DUM ;
model _DIFF = _DUM CONC / s ddfm=satterth ;
TQT試験で求められる主な解析
薬物濃度とQT/QTc間隔の関連性の検討
TQT試験の結果
本活用事例の結果と解釈(例)
– いずれにしろ、リスク評価の中でQT/QTcへの作用が示された薬剤
については、「最悪条件下の設定」(すなわち、対象患者集団にお
いて、作用が最大の時点、かつ治療中に到達し得る最大血中濃度に
おいて測定されたQT/QTc間隔)を確認することは重要である。
– ⇒本活用事例では、試験結果は陽性だが、臨床用量に延長はみられ
ず、最高用量についても、常に点推定値が10ms付近の推移ではな
く、Cmax付近においても大きく延長していないことから、今後の
開発段階で通常より詳細に心電図データを収集・解析するという対
応で良い?(もちろん解釈はケースバイケースで、実際にはカテゴ
リカル解析やT波・U波の集計、有害事象の発現率、より大きな血
中濃度での推定等の結果も考察して今後の対応が決定される)
ODS PDFを用いた簡易解析帳票の作成
ODS PDFの主な機能
– 高品質なグラフや表の作成、しおりの設定も行うことができる。
– ODS LAYOUTと組み合わせることにより、レイアウトの調整を行うこ
とができる。
ods pdf file="<出力ファイルのパス/名前>" <options> ;
<グラフ/レポート作成プロシジャ>
ods pdf close ;
オプション
内容
pdftoc=
number
しおりに出力するレベルを指定
startpage=
yes/no/never/now
改ページ指定
style=
style
出力スタイルの指定
columns=
number
各ページの列数を指定
ODS PDFを用いた簡易解析帳票の作成
ODS LAYOUT
– 出力グリッドを定義して出力レイアウトを調整する。
ods layout start columns=
number
rows=
number
;
ods region ;
*--- 指定グリッド数繰り返す
;
<グラフ/レポート作成プロシジャ>
ods region ;
...
ods layout end ;
region 1
region 2
region 3
columns=3、rows=2の場合
の出力グリッド
ODS PDFを用いた簡易解析帳票の作成
ODS PDF
– しおりのカスタマイズ
(pdftoc=3)
ods proclabel="Graph 1" ;
proc sgplot data=TQTMAIN noautolegend
description="QTcF Plot [Change from Baseline]: Placebo" ;
ods proclabel="Table 1" ;
proc tabulate data=TQTMAIN
contents="QTcF Summary Statistics [Change from Baseline]" ;
where _NAME_="QTcF_M" and TREAT=&_TREAT ; class VISIT ;
var _DIFF ; table VISIT="",
_DIFF=""*(n*f=7. mean*f=7.2 stddev*f=8.3 ods pdf pdftoc=3;
ODS PDFを用いた簡易解析帳票の作成
ODS PDF
– グラフと表のグリッド出力(2x2)
*--- 2x2のグリッドを定義 ;
ods layout start columns=2 rows=2 ; ods region ; <Graph 1> ods region ; <Table 1> ods region ; <Graph 2> ods region ; <Table 2>
ODS PDFを用いた簡易解析帳票の作成
ODS PDF
おわりに
SGプロシジャとGTLの有用性
– 従来のグラフ作成プロシジャよりも高品質なグラフを簡単に作成す
ることができるSGプロシジャ及びGTLの使用方法を紹介した。
TQT試験における活用
– ICH-E14の施行により、本邦の医薬品開発において重要な位置づ
けとなったTQT試験についてその概要を述べた。
– TQT試験における主な解析を実施するとともに、SGプロシジャ、
GTL及びODS PDFを用いた簡易解析帳票の作成方法を紹介した。
今後の課題・展望
– 新しい文法を覚える必要がある(特にGTL)
– SGプロシジャやODS Graphicsによるカラフルな出力は、総括報
告書や申請資料に使用することが可能であるのか?
– TQT試験におけるナレッジの集積による解析方法や帳票作成に関す
参考文献
SAS Institute Inc. Statistical Graphics Procedures Guide
Warren F. Kuhfeld. The Graph Template Language and the Statistical
Graphics Procedures: An Example-Driven Introduction. SAS Global Forum
2010
Sanjay Matange. Tips and Tricks for Clinical Graphs using ODS Graphics.
SAS Global Forum 2011
Jeff Cartier. A Programmer's Introduction to the Graphics Template
Language. SUGI 31
ICH E14: 非抗丌整脈薬におけるQT/QTc間隔の延長と催丌整脈作用の潜在的可能性
に関する臨床的評価
Garnett CE, Beasley N, Bhattaram VA, et al. Concentration-QT
relationships play a key role in the evaluation of proarrhythmic risk during
regulatory review. J Clin Pharmacol. 2008;48:13-18.