生存分析

生存分析は、バイオサイエンスの分野で、研究対象の母集団の中から生存数を定量化するのに使用されます。Originは3つの幅広い検定をサポートしており、OriginProでは使用できます。

名前 説明
kaplanmeier Kaplan-Meier (積極限) 推定量
phm_cox Cox比例ハザードモデル
weibullfit ワイブルフィット

これらのXファンクションの入出力の引数など完全な説明は、オンラインヘルプの 生存分析をご覧下さい。

Kaplan-Meier分析

生存率を推定したければ、 kaplanmeier Xファンクションを使って、生存グラフを作成し、生存関数の性質を比較します。これは、積極限を使って、生存関数を推定し、生存関数の同等性を検定するため、Log Rank, Breslow, Tarone-Wareの3つの手法をサポートしています。

例えば、生化学者がより良い抗ガン剤を探しているとします。いくつかのラットに発ガン物質DMBAを与えた後、ラットの異なるグループに異なる薬を投与し、最初の60時間の生存状況を記録します。 2種類の薬で生存率の違いを定量化したいと考えます。

// サンプルデータをインポート
newbook;
fname$ = system.path.program$ + "Samples\Statistics\SurvivedRats.dat";
impasc;
 
//Kaplan-Meier分析を実行
kaplanmeier irng:=(1,2,3) censor:=0 logrank:=1 
            rd:=<new name:="sf"> 
            rt:=<new name:="km">;
 
//生存レポートツリーから結果を取得
getresults tr:=mykm iw:="km";
 
if (mykm.comp.logrank.prob <= 0.05)
{
    type "The two medicines have significantly different"
    type "effects on survival at the 0.05 level ..."; 
    type "Please see the survival plot.";
 
    //生存関数をプロット
    page.active$="sf";
    plotxy iy:=(?, 1:end) plot:=200 o:=[<new template:=survivalsf>];
 
}
else
{
    type "The two medicines are not significantly different.";
}

Cox比例ハザード回帰

phm_cox Xファンクションは、固定の共変量に対するCox比例ハザードモデルに関連するパラメータの見積もりおよびその他の統計量を取得するのに使うことができます。 いくつかの固定の共変量に沿ってハザード率の変化を予測できます。

例えば、結腸直腸癌の66名の患者に対して、効果的な予後因子と最適な予後指標を決めたいとします。(予後因子は、人がある病気であるかどうかを決めるパラメータ) このスクリプトは、関連のある統計量を取得するため、phm_cox Xファンクションを実装しています。

//サンプルデータをインポート
newbook;
string fpath$ = "Samples\Statistics\ColorectalCarcinoma.dat";
fname$ = system.path.program$ + fpath$;
impasc option.hdr.LNames:=1 
       option.hdr.units:=0 
       option.hdr.CommsFrom:=2 
       option.hdr.CommsTo:=2;
 
// Cox回帰を実行
phm_Cox irng:=(col(1),col(2),col(3):end) censor:=0 rt:=<new name:="cox">;
 
//レポートツリーから結果を取得
page.active$="cox";
getresults tr:=cox;
 
type "Prognostic parameters determining colorectal carcinoma are:";
 
page.active$="ColorectalCarcinoma";
loop(ii, 1, 7)
{
  // 確率が 0.05以下の場合 
  // 生存時間に対して効果ありと言える
  if (cox.paramestim.param$(ii).prob<=0.05)
    type wks.col$(ii+2).comment$;
}

Weibullフィット

データがワイブル分布であると前もって分かっている場合、 weibullfit Xファンクションを使って、ワイブルパラメータを推定できます。

//サンプルデータをインポート
newbook;
fname$ = system.path.program$ + "Samples\Statistics\Weibull Fit.dat ";
impasc;
 
//ワイブルフィットを実行
weibullfit irng:=(col(a), col(b)) censor:=1;