LIFETESTプロシジャの生存曲線がバージョンによって異なる

[OS]ALL
[リリース] 6.11 6.12
[キーワード] SAS/STAT LIFETEST OUTSURV GPLOT

[質問]

LIFETESTプロシジャのOUTSURV=オプションによって出力された生存率をもとに、GPLOTプロシジャを用いて生存曲線を描いていますが、 SAS 6.11と6.12で、生存曲線の最後の方が、異なって描かれる場合があります。なぜでしょうか。

[回答]

SAS 6.12より、最後の方のオブザベーションが打ち切りデータの場合、OUTSURV=オプションのデータセットに欠損値として出力されるようになりました。
このため、OUTSURV=のデータからGPLOTプロシジャを用いて生存関数をプロットした場合、以前のリリースと異なったグラフが描かれます。 (SYMBOLにI=STEPLJを指定した場合は、以前のリリースでは水平な線で終わっていたものが、垂直線として描かれます。)
この仕様変更は、プリント出力との一貫性を保持するために行われたものです(推定値が求められないことを表します)。
OUTSURV=で出力されたデータセットに対して、下記のようなプログラムを実行すれば、SAS 6.11以前のデータ形式になります。

● 欠損値を埋めるためのデータステップ

        data OUTSURV;
           set OUTSURV;       /* OUTSURVは、出力データセット名です */
           retain lag_s;
           drop lag_s;
           if survival = . then survival = lag_s;
           lag_s = survival;
        run;

なお、LIFETESTプロシジャにおいてGRAPHICSオプションを用いた場合の生存曲線は、SAS 6.11と同様、水平な線で描かれます。