CDASH から SDTM を効率的に作成するための Tips のご紹介 小松邦岳 鈴木淳一 村岡了一 飛石陵子 ( 株式会社アスクレップ ) Introduction of Tips to make SDTM efficiently from CDASH. Kunitake Komatsu, Junichi Suzuki, Ryoichi Muraoka, Ryoko Tobiishi (Asklep.Inc)
要旨 : CDASH 標準に準拠した Raw データ (CRF) から SDTM を効率的に作成するポイントと EDC の仕様が様々であることにより標準化しきれない部分を補うツール (SAS マクロ ) 開発のコンセプトを紹介する キーワード :CDISC, CDASH, SDTM 2
Agenda はじめに CDASH と Raw データ SDTM CDASH と SDTM CDASH からの SDTM 作成を効率化する SAS マクロのコンセプト 具体的なマクロ活用法 まとめ 3
はじめに Raw データからの SDTM の効率的な作成は 各社取り組んでいる大きな課題です CDASH 標準を利用して CRF および Raw データを作成することで SDTM の効率的な作成は可能ですが 注意すべきポイントがいくつかあります また EDC の仕様上の制約などにより Raw データが理想の定義にならないこともあるでしょう 本発表では CDASH 標準を利用した Raw データから SDTM を効率的に作成するためのポイントと そのために開発したツール (SAS マクロ ) のコンセプトを紹介いたします 用語の定義 : Raw データ = CDMS または EDC からエクスポートしたデータ 4
CDASH と Raw データ SDTM CDASH は 常に SDTM Mapping を最終目標としてきた ことが明言されています 実際 CDASH UG には Raw データを SDTM に変換する方法も述べられています CDASHUG の 常に SDTM Mapping を最終目標としてきた の記載 ( 参考 引用文献 2 Page17) 5
CDASH と Raw データ SDTM CDASH を用いれば そのまま説明不要の世界標準になりえます 6
CDASH と Raw データ SDTM 入力 (Raw データ ) と出力 (SDTM) が標準化されていれば その間の処理も標準化できるはずです 標準化! 標準化 標準化 Raw データ SDTM 7
CDASH と Raw データ SDTM CDASH に準拠した場合 承認申請者等の負担軽減を考慮した より効率的な実施を検討する ことを通知 ( 承認申請時の電子データ提出に関する基本的考え方について 参考 引用文献 5 ) 8
CDASH と Raw データ SDTM Raw データ (CRF) を CDASH で標準化することが理想的です CDASH から SDTM に変換する際に注意すべきポイントはあります Point 9
CDASH と Raw データ SDTM Point CDASH と SDTM は 定義が一致しない部分があります また EDC の仕様の制約から Raw データを理想的な定義にできないこともあるでしょう CDASH SDTM 理想の Raw データ定義 実際の Raw データ定義 10
CDASH と SDTM CDASH と SDTM で定義が一致しない部分 どのような部分が どのような理由で一致しないかの理解は マッピングを考えるうえで重要です 相違点のうち 主なものを簡単にまとめました テーブルに関する定義の不一致 データ構造を非正規化 ( 水平展開 ) とするか正規化 ( 垂直展開 ) とするかの基準については CDASH では規定はされていない (SDTM では 正規化が規定されている ) 11
CDASH と SDTM CDASH と SDTM で定義が一致しない部分 変数に関する定義の不一致 変数は CDASH SDTM ともに規定されている Raw データにおいては 基本的には CDASH に従うが CDASH で規定されておらず SDTM でのみ規定されているものは SDTM に従う 意味合いは同じだが定義が異なる変数 CDASH のみに存在する変数 SDTM のみに存在する変数のそれぞれが存在する < 意味合いは同じだが定義が異なる変数 > 例えば 日時値について CDASH では日付 (--DAT) 変数と時間 (--TIM) 変数に分かれているが SDTM では日付時間 (--DTC) 変数で定義されている 12
CDASH と SDTM CDASH と SDTM で定義が一致しない部分 変数に関する定義の不一致 <CDASH のみに存在する変数 > 例えば 有害事象が発現したか? または 併用薬を使用したか? など データ確認用の変数 ( クリーニングプロンプト ) <SDTM のみに存在する変数 > CRF 外から設定される項目および機械的に算出すべき項目など --DY :Study Day --SEQ : Sequence 番号ほか 情報の特性上 Trial Design model は CDASH には存在しない 13
CDASH と SDTM 意味合いは同じだが定義が異なる変数? 例えば 日時について CDASH 日と時が別項目 SDTM 日時が 1 項目 EDC では 日付をカレンダーから選択 時刻をプルダウンで選択などとする場合が多い 日時を 1 項目にまとめると これができなくなる or 複雑になるため 入力しづらい SDTM CDASH (EDC 画面 ) 2017-01-01T12:00 CDASH は CRF(EDC) に最適化されており 差異は合理的 14
CDASH と SDTM 意味合いは同じだが定義が異なる変数? 同様に 年 月 日が部分的に不明であることが想定される項目は CDASHでは 年 月 日を別々に収集する CDASH 年 月 日が別項目 SDTM 日時が 1 項目 CDASH (EDC 画面 ) 不明な日付は カレンダーから選択できない EDC に正しく入力してもらうためには 年 月 日が別々の項目であることが好ましい SDTM 2010-03 やはり CDASH と SDTM の差異は合理的 15
CDASH と SDTM EDC の制約のため理想通りの Raw データ定義にできない場合 本当であれば 正規化されたデータで欲しい Raw データが EDC の仕様の制限のために 非正規化のデータしか手に入らない などの状況です 理想 USUBJID LBPERF LBDAT LBTESTCD LBORRES 1234005 Y 2017-03-01 AST 28 1234005 Y 2017-03-01 ALT 31 実際 1234005 Y 2017-03-01 BILI 0.7 1234005 Y 2017-03-01 CREAT 0.78 USUBJID LBPERF LBDAT AST ALT BILI CREAT 1234005 Y 2017-03-01 28 31 0.7 0.78 本件について詳しくは 後程マクロのコンセプトの紹介と合わせて説明いたします 16
CDASH と SDTM CDASH と SDTM の定義の差異は 合理的であり 避けて通れません 定義の差異に対する変換処理をいかに標準化するかが 効率化のポイントとなります EDC の仕様上の制約により Raw データが理想的な定義とならない場合の標準化も 効率化のポイントとなります 17
CDASH からの SDTM 作成を効率化する SAS マクロのコンセプト CDASH 標準を利用した Raw データから SDTM 作成を効率化する社内ツール (SAS マクロ ) を作成いたしました そのコンセプトを紹介いたします 18
CDASH からの SDTM 作成を効率化する SAS マクロ CDASH から SDTM 作成時にポイントとなる箇所 ポイントとなる箇所 テーブルに関する定義の不一致 変数に関する定義の不一致 意味合いは同じだが定義が異なる変数 CDASHのみに存在する変数 SDTMのみに存在する変数 EDC の制約のため理想通りの Raw データ定義にできない場合 具体的な箇所の例下記日付変換など SDTM 変換不要 --DY 変数 SEQ 変数などデータの転置処理など 本質的に同じ問題 19
CDASH からの SDTM 作成を効率化する SAS マクロ CDASH から SDTM を効率よく作成するため 標準化した処理を SAS マクロ化いたしました < 作成したマクロの一部 > カテゴリ マクロ 日付関連 日付時間変換不完全な日付時間の変換 --DY 変数 導出 設定 --SEQ Visit 関連変数 構造変換 転置 ( 横 縦変換 ) データ適合 Length 適合 ( 最短化 ) 全角等 使用不能文字確認 コンセプトをご紹介いたします 20
日付関連マクロ : 日付時間変換 収集された日付変数と時間変数を 日付時間変数に変換する 不完全な日付が入力されることは前提とされない EDC Raw データ (CDASH) SDTM 日付 時間 SAS macro 日付時間 一見すると簡単そうだが 実際は細かなルールがある 21
日付関連マクロ : 日付時間変換 時間変数 (--TIM) は存在しなくても構わない その場合 SDTM の日付時間値は日付のみをセットする 時間変数 (--TIM) が存在するが Null の場合も SDTM の日付時間値は日付のみをセットする 日付変数 (--DAT) が Null で 時間変数 (--TIM) が Null ではない場合 時刻のみを -----Thh:mm -----Thh:mm:ss のようにセットする 対象項目例 Raw データ (CDASH) SDTM EGDAT EGTIM EGDTC LBDAT LBTIM SAS macro LBDTC CMSTDAT CMSTTIM CMSTDTC 22
日付関連マクロ : 日付時間変換 マクロの入出力は以下のようにした %DateComp(inds=,outds=,prefix= ); inds 処理対象データセット名 outds 処理後データセット名 prefix 対象変数の接頭語を設定 ポイントは prefix! Rawデータ DAT (CDASH) TIM 接頭語のみの指定で 変換前 変換後の全ての変数名が明らかに! SDTM DTC EGDAT EGTIM EGDTC LBDAT LBTIM SAS macro LBDTC CMSTDAT CMSTTIM CMSTDTC 23
日付関連マクロ : 日付時間変換 使用イメージ データセット weg1 CDASH EGDAT を含むデータセット EGTIM がある場合は そちらも処理対象となる %DateComp(inds=wEG1,outds=wEG2,prefix=EG ); 処理 --TIM の有無は自動で判別 データセット weg2 weg1 に EGDTC を追加したデータセット 24
日付関連マクロ : 不完全な日付時間の変換 不完全日付が前提となり ルールも複雑になる部分もあるが 基本コンセプトは変わりません EDC Raw データ (CDASH) SDTM MHSTYR MHENYR MHSTMO MHSTDY SAS MHSTDTC MHENMO MHENDY macro MHENDTC %DateInCo(inds=,outds=,prefix= ); inds 処理対象データセット名 outds 処理後データセット名 prefix 対象変数の接頭語を設定 マクロパラメーターは同じ 25
日付関連マクロ Raw データを標準化していることで 日付 時間の変換プロセスも標準化できました CDASH 準拠のため 変数名の指定も簡略化でき ミス トラブルを予防できます 実際は 紹介した以外に作成した日時値のエラーチェック機能などもついていますが ここでは割愛いたします 26
データの構造変換マクロ ( 転置 ) EDC の制約のため理想通りの Raw データ定義にできない場合 EDC LB ドメインの例 作りたい SDTM < 正規化されている> USUBJID LBDTC LBTESTCD LBORRES 1234005 2017-03-01 AST 28 1234005 2017-03-01 ALT 31 1234005 2017-03-01 BILI 0.7 1234005 2017-03-01 CREAT 0.78 27
データの構造変換マクロ ( 転置 ) EDC の制約のため理想通りの Raw データ定義にできない場合 EDC LB ドメインの例 理想通りの Raw データ定義 正規化されている USUBJID LBPERF LBDAT LBTESTCD LBORRES 1234005 Y 2017-03-01 AST 28 1234005 Y 2017-03-01 ALT 31 1234005 Y 2017-03-01 BILI 0.7 1234005 Y 2017-03-01 CREAT 0.78 28
データの構造変換マクロ ( 転置 ) EDC の制約のため理想通りの Raw データ定義にできない場合 EDC LB ドメインの例 Raw データ 1 つのフォームに存在している項目は 横 ( 変数を増やす ) 方向でしか取り扱えない EDC も 存在している USUBJID LBPERF LBDAT AST ALT BILI CREAT 1234005 Y 2017-03-01 28 31 0.7 0.78 29
データの構造変換マクロ ( 転置 ) LBドメインの例 Rawデータ USUBJID LBPERF LBDAT AST この ALT EDCを用いる以上 BILI CREAT 1234005 Y 2017-03-01 28 31 必ず生じる問題 0.7 0.78 理想通りのRawデータ定義 USUBJID LBPERF LBDAT LBTESTCD LBORRES 1234005 Y 2017-03-01 AST 28 是非 標準化したい 1234005! Y 2017-03-01 ALT 31 1234005 Y 2017-03-01 BILI 0.7 1234005 Y 2017-03-01 CREAT 0.78 30
データの構造変換マクロ ( 転置 ) データの処理を標準化 ( マクロ化 ) するということは Raw データの定義の標準化が必要 CDASH だけでは 標準化が足りていない状態 ルールを追加して最適な変数の構造を考えよう! ちなみに 処理は単純な Transpose? 測定無しの Visit の設定機能も持たせました 31
データの構造変換マクロ ( 転置 ) どの情報をどこからセットするか?( マッピング ) Raw データ 変数名からセット USUBJID LBPERF LBDAT AST ALT BILI CREAT 1234005 Y 2017-03-01 28 31 0.7 0.78 理想通りのRawデータ定義 USUBJID LBPERF LBDAT LBTESTCD LBORRES 1234005 Y 2017-03-01 AST 28 1234005 Y 2017-03-01 ALT 31 1234005 Y 2017-03-01 BILI 0.7 1234005 Y 2017-03-01 CREAT 0.78 変数の内容からセット 32
データの構造変換マクロ ( 転置 ) 転置対象となる変数はどのように見分ける?? 転置したい変数 転置後全レコードに同一値をセットしたい変数が混在 標準化するのだから データの定義から判別可能にしたい Raw データ変数名にルールを作り 標準化した 転置対象変数は --TESTCD の内容 + _ + 検査結果を格納する変数名とした Raw データ USUBJID LBPERF LBDAT AST _LBORR ES ALT _LBORR ES BILI _LBORR ES 1234005 Y 2017-03-01 28 31 0.7 0.78 CREAT _LBORR 33 ES 33
データの構造変換マクロ ( 転置 ) マクロの入出力は以下のようにした Raw データ %TransDS(inds=,outds=,suffix=,perf=,dsall= ); inds 処理対象データセット名 outds 処理後データセット名 suffix 対象変数の接尾語を設定 perf --PERF 変数名 dsall 全項目を示すコード値 USUBJID LBPERF LBDAT AST _LBORR ES ALT _LBORR ES BILI _LBORR ES 1234005 Y 2017-03-01 28 31 0.7 0.78 CREAT _LBORR ES %TransDS(inds=wLB1,outds=wLB2,suffix=LBORRES,perf=LBPERF,dsall=LBALL ); 34
データの構造変換マクロ ( 転置 ) 測定が行われなかった場合 Raw データ USUBJID LBPERF LBDAT AST _LBORR ES ALT _LBORR ES BILI _LBORR ES CREAT _LBORR ES 1234006 N (Null) (Null) (Null) (Null) (Null) SDTM USUBJID LBDTC LBTESTCD LBORRES 1234006 LBALL %TransDS(inds=wLB1,outds=wLB2,suffix=LBORRES,perf=LBPERF,dsall=LBALL ); 35
データの構造変換マクロ ( 転置 ) Raw データに取り決めを作り 情報を持たせれば 精度の高い構造変換も可能 EDC の制約のため CDASH に 準拠 でのみでは標準化が足りない部分はデータの定義を工夫することで解決 CDASH を利用しよう! CDASH を便利な 道具 と考えよう! 36
具体的なマクロ活用法 CDASH と SDTM で定義が異なるものは マクロの作成により効率化を行うことができました では CDASH と SDTM で定義が同じ変数はどうすれば? マクロを活用したプログラムの作成を 効率的に行う方法は? 37
具体的なマクロ活用法 マクロをすでに組み込んだ SDTM 作成プログラムの雛型を作成! CDASH SAS Program 雛型 SDTM CDASH と SDTM で定義が同じで なおかつ EDC の制約にも抵触しない変数は Raw データから SDTM へコピーするのみであり 大部分を雛型で対応可能です CDASH と SDTM で定義が異なる部分は 組み込まれたマクロで対応! 38
具体的なマクロ活用法 弊社では 紹介したマクロをすでに組み込んだ雛型を作成しています 最小のコストで Raw データから SDTM を作成できる体制を整えました 転置のマクロも組み込み済み! 39
まとめ 入力 (Raw データ ) と出力 (SDTM) が標準化されていれば その間の処理も標準化できるはずです CDASH を利用した Raw データ (CRF EDC) の標準化を進めることで 省コスト化および品質の安定が推進します CDASH と SDTM で異なる部分 マクロ化 CDASH と SDTM で同一となる部分 雛型化 EDC の制約等により CDASH に 準拠 でのみでは標準化が足りないこともありますが ルールを追加することにより 標準化は可能です CDASH を 便利な道具 と考えて標準化に利用しましょう! 40
参考 引用文献 [1] CDISC CDASH Team. Clinical Data Acquisition Standards Harmonization (CDASH) Version 1.1 [2] CDISC CDASH Project Team. Clinical Data Acquisition Standards Harmonization (CDASH) User Guide V1-1.1 [3] CDISC Submission Data Standards Team and CDISC SDTM Governance Committee. Study Data Tabulation Model Version 1.5 [4] CDISC Submission Data Standards Team. Study Data Tabulation Model Implementation Guide: Human Clinical Trials Version 3.2 [5] 厚生労働省医薬食品局審査管理課長. 承認申請時の電子データ提出に関する基本的考え方について 薬食審査発 0620 第 6 号平成 26 年 6 月 20 日 [6] CJUG CDASH B チーム. CDASH と SDTM の関連性 (2010-07-26) 41
ご清聴 ありがとうございました 42