SAS 9.4 (SAS/STAT 13.1) では SGPLOT Procedure に大幅な改良・追加が行われました。
例えば、XAXISTABLE statement および YAXISTABLE statement は、軸の thick mark の位置に合わせて表や数値を簡単に並べることができる強力な statementです。
本マクロはこの機能を使用して、Kaplan-Meier プロットにリスク集合のサイズを表示させるためのデータセットを作成します。
また、 SAS/STAT 14.1 ではノンパラメトリックな競合リスクの解析に対応したため、CIF のプロットを簡単に描画できる様になりました。
CIF の解析において、リスク集合のサイズについては、Kaplan-Meier プロットと同様のリスク集合 (打ち切りと競合イベントを両方をともリスク集合から除く) と、調整したリスク集合 (競合イベントはリスク集合に残り続ける) の両方を計算できる様にしています。
なお、調整したリスク集合は競合リスクの影響を見る際の参考のために用いる程度が望ましく、解析結果の報告時には未調整のリスク集合を表示したほうがよいと思われますのでご注意下さい。
SAS/STAT 14.1で追加された機能を利用するため、SAS/STAT 14.1 以降のバージョンが必要になります。
既知の問題点 & 改良予定
不具合や質問につきましては、メールにてご連絡いただけると助かります。
マクロ (skmdata) の引数の説明
/******************************************************** 引数 data: 入力データセット名 time: 時間の変数 event: イベント変数 group: 群の変数 censor_value: 打ち切りのコード out: 出力データセット名 timemax: リスク集合のサイズの表示の最後の時点 timeby: リスク集合のサイズの表示を何ヶ月 (または日, 年) 毎にするか * CIFを計算したい場合のみ以下を指定 event_value: 目的のイベントのコード名 * 重み付きの解析 (IPTWなど) をする場合のみ以下を指定 weight: 重み変数 ********************************************************/
マクロ (skmdata) の出力データセット (out) の説明
/******************************************************** 出力データセット (out) time: 時間 strata: 群 est: 生存関数 or CIFの推定値 lcl: 信頼下限 ucl: 信頼上限 left: リスク集合のサイズ atrisk: 表示用に整形したリスク集合のサイズ xatrisk: 表示用に整形したリスク集合のサイズの横軸 * event_value を指定した場合のみ以下が作成される adjleft: 調整したリスク集合のサイズ adjatrisk: 表示用に整形した調整したリスク集合のサイズ ********************************************************/
マクロ (skmdata) を実行すると、上記の変数で結果が出力されるため、ダウンロードファイルのサンプルを一部編集するだけでグラフを描画できます。
サンプルプログラムは上記のダウンロードファイルに含まれていますので、そちらをご参照下さい。
以下では、出力結果の例を示します。