24.6 コックス回帰

コックス回帰 (Cox Regression) は、母集団の生存時間に影響を及ぼす可能性のある危険因子を評価する生存分析の一部です。

SigmaPlot に用意されているコックス回帰検定は以下の2つです:

  1. コックス回帰について
  2. コックス回帰比例ハザードモデルを実行する
  3. コックス回帰層別モデルを実行する
  4. コックス回帰のデータを配置する
  5. コックス回帰比例ハザードオプションを設定する
    1. Options for Cox Regression Proportional Hazard: Criterion
    2. Options for Cox Regression Proportional Hazard: Graph Options
    3. Options for Cox Regression Proportional Hazard: Results
  6. コックス回帰層別モデルオプションを設定する
    1. Options for Cox Regression Stratified Model: Criterion
    2. Options for Cox Regression Stratified Model: Graph Options
    3. Options for Cox Regression Stratified Model: Results
  7. コックス回帰比例ハザードモデルを実行する
  8. コックス回帰層別モデルを実行する
  9. コックス回帰の結果を解釈する
  10. コックス回帰のグラフ
    1. コックス回帰グラフを作成するには

 

1. コックス回帰について

コックス回帰は、母集団の生存時間に影響を及ぼす可能性のある危険因子、すなわち、共変量 (covariates) を評価する生存分析の一部です。(危険因子のことを予測変数 predictors または説明変数 explanatory variables と言うこともあります)

例えば、性別、年齢、および、2種類の薬物治療がある種のガンに罹っている母集団の生存に影響を及ぼす可能性があるとしましょう。生存時間は、年齢が上がるほど短くなるとします。男性の死亡率は、女性に比べて高くなるとします。最後に、薬物 A は薬物 B より生存時間を延ばすとします。この研究で生存過程に影響を及ぼす共変量は、性別、年齢、薬物治療です。コックス回帰では、この共変量と生存時間との関係を説明するモデルを定めます。このモデルは、任意の共変量の値に関して各時点における生存の見込み (尤度) を予測するのに役立ちます。また、これにより各共変量ごとの効果の有意性を判断することもできます。

共変量には2つのタイプがあります。上記の共変量のうち性別 (Gender) と薬物治療 (Drug Therapy) はいずれも数値ではない2つのカテゴリを取ることから、カテゴリ型共変量 (categorical covariates) と言います。共変量のうち年齢 (Age) は、連続的な数値の範囲を取ることが想定されることから連続型共変量 (continuous covariate) と言います。カテゴリ型共変量には、そのカテゴリを割り当てた数値がしばしば使われますが、これらの値は単に名称として利用されるだけで、何らかの尺度を表現しているのではありません。

生存時間に対する共変量の効果を可視化するのにもっとも簡単な方法は、生存曲線を作図することです。生存曲線は、それぞれの時間の値とその値を超える生存確率間の関係をプロットします。この関係のことを生存関数 survival function (または生存確率関数 survivorship function) と言います。カプラン=マイヤー (Kaplan-Meier) 生存分析では、生存関数を任意の共変量から独立したものとして定義します。コックス生存分析では、母集団の生存関数を共変量それぞれの特定値から導出します。このような関数のグラフを共変量調整済み生存曲線 (covariate-adjusted survival curve) といいます。

コックス回帰の主たる研究対象は、抽出された生存データから推定する母集団のハザード関数です。この関数は生存関数と密接に関係します。ハザード関数 (条件付き故障率、ハザード率、あるいは、単にハザードとしても知られています) は、ある経過時点における生存が与えられた場合、各時点における故障発生の瞬間的な変化率として定義されます。例えば、h をハザード関数とし、ある経過時間 t において h(t) =.1 であるとすると、この値は、ある被験者が経過時間 t まで生存していたとすれば、その被験者が次の単位時間に故障 (死亡) する確率は、約 10% であると解釈することができます。もう一つ別の関数である累積ハザード関数は、それぞれの経過時間におけるハザードをそこにいたる全ての経過時間について積分したものとして定義されます。ハザード関数それ自体は実用として使うにはあまりにもノイズが多いため、ハザード関数の代わりに平滑化された推定量が与えられます。累積ハザード関数を H であらわせば、上記定義を使用して、各経過時間 t における生存関数 S を、S(t)=exp(—H(t)) として定義できます。

上記で説明した全ての関数は、時間の関数だけでなく、その生存研究における共変量によっても変動します。コックスモデルの場合、ハザード関数は次式で与えられると仮定されます:

ここで、X1, X2, . . ., Xn は研究の共変量です。関数 h0 は、ベースラインハザード関数と呼ばれるもので、経過時間のみに依存します。方程式の右辺にある指数因子には、共変量が含まれますが、経過時間には依存しません。ここでのコックス回帰の実施においては、いずれの共変量も時間に依存しないと仮定しますので、被験者それぞれの値は時間が経過しても一定となります (ただし、コックス回帰を拡張して、時間に依存する共変量を含めることも可能です)。

ここで取り扱うモデルの係数 b1, b2, bn は、時間と共変量のいずれからも独立な定数です。それぞれの値は偏尤度関数 (partial likelihood function) として知られている量を最大化することによって回帰分析から決定します。求められた係数の値は、best-fit 係数と呼ばれたり、ときには最尤推定量 (maximum likelihood estimates) と呼ばれることもあります。係数が決定したら、抽出された各イベント時間におけるベースライン生存関数の値を推定します。ベースライン生存関数は、全ての共変量をゼロに設定することで定義されます。この関数を S0 であらわすと、各イベント時間 t における共変量調整済み生存関数と累積ハザード関数は、次式で与えられます:

ここでのハザード関数のモデルは、共変量の値に関して2つの指定があれば、それに対応するハザードの値は時間の経過に対して比例関係になることを示します。このコックスモデルを比例ハザードモデル (proportional hazards model) と呼ぶ理由はここにあります。モデルの共変量の候補がこの比例関係にならないこともあります。例えば、調査研究の共変量に性別 (Gender) があるとしましょう。もし、研究の最初の1ヶ月間に男性が女性の2倍の比率で死亡し、次の月は両性の死亡が同じ比率になるとすれば、男性の女性に対するハザードの比率、すなわちハザード比は、期間中は一定でなく、比例の仮説は棄却されます。このような共変量は、ハザードモデルに含めることはできません。

また、ある共変量の値が研究の計画に基づいており、生存の危険因子としての重要性は二次的である場合も、その共変量はモデルから除外します。例えば、患者の回復に関して年齢と薬物療法の影響を評価するのに、2つの異なる病院でその調査を実行する場合、病院 (Clinic) がこのような共変量に該当します。

ある変数のデータが生存データに含まれている場合、上記に示したような理由からハザードモデルの共変量とはならない変数を層別変数 (stratification variable) と呼びます。このような変数の値や水準をそれぞれ 層 (stratum) と呼びます。各水準の総称は、複数形の strata です。層別変数がある場合、その生存研究は、層ごとに複数の群に分割され、それぞれの群には、回帰分析から決定されるそれぞれの生存関数があります。Best-fit 係数はそれぞれの層と同じですが、モデル内のベースライン時間依存因子は層ごとに異なります。

 

2. コックス回帰比例ハザードモデルを実行する

  1. ワークシートに適切なデータを入力または配置します。詳しくは、コックス回帰のデータを配置するをご覧ください。

  2. 必要があれば、 Cox Regression Proportional Hazards オプションを設定します。

  3. Analysis タブをクリックします。

  4. SigmaStat グループにある Tests ドロップダウンリストから以下を選択します:

    SurvivalCox RegressionProportional Hazards

  5. 生存時間、ステータス変数、および共変量を含むワークシートの列を Select Data パネルで選択します。

  6. Cox Regression の結果を解釈します。詳しくは、コックス回帰の結果を解釈するをご覧ください。

 

3. コックス回帰層別モデルを実行する

  1. ワークシートに適切なデータを入力または配置します。詳しくは、コックス回帰のデータを配置するをご覧ください。

  2. 必要があれば、Cox Regression Stratified オプションを設定します。

  3. Analysis タブを選択します。

  4. SigmaStat グループにある Tests ドロップダウンリストから以下を選択します:

    SurvivalCox RegressionStratified Model

  5. 層、生存時間、ステータス変数、および共変量を含むワークシートの列を Select Data パネルで選択します。

  6. Cox Regression の結果を解釈します。詳しくは、コックス回帰の結果を解釈するをご覧ください。

 

4. コックス回帰のデータを配置する

SigmaPlot のコックス回帰 (Cox Regression) は、比例ハザード (Proportional Hazards) と 層別モデル (Stratified Model) の2つの検定に分けられます。いずれの検定も、少なくとも3列のデータ、すなわち、時間 (time)、ステータス (status)、および、任意数の共変量 (covariate) の列が必要となります。層別モデル検定では、これらに加えて層 (strata) データを含むワークシートの列を選択します。

 

5. コックス回帰比例ハザードオプションを設定する

コックス回帰比例ハザード (Cox Regression Proportional Hazards) オプションを使用するのは:

 

コックス回帰比例ハザードオプションを変更するには:

  1. SigmaStat グループの Select Test ドロップダウンリストから Cox PH Model を選択します。

  2. Options をクリックします。 Options for Cox PH Model ダイアログボックスに以下の3つのタブが表示されます:

    1. Criterion:Criterion タブをクリックすると、変数選択と収束に関するオプションを指定できます。詳しくは、Options for Cox Regression Proportional Hazard: Criterion をご覧ください。

    2. Results:Results タブをクリックすると、生存時間の単位の指定とレポートやワークシートの内容を修正することができます。詳しくは、Options for Cox Regression Proportional Hazard: Results をご覧ください。

    3. Graph Options:Graph Options タブをクリックすると、グラフのシンボル、ライン、スケールに関するオプションが表示されます。このタブでは統計グラフ要素を追加することができます。詳しくは、Options for Cox Regression Proportional Hazard: Graph Options をご覧ください。

      SigmaPlot を次回以降起動するときは、ここで選択したオプションの内容が保持されます。

  3. 検定を続行するには、Run Test をクリックします。

    検定ウィザードの Select Data パネルが表示されます。

  4. 現在の設定内容を適用して、オプションダイアログを閉じるには、OK をクリックします。
Note:これらのダイアログボックスのオプションはいずれも "sticky" (固定) タイプですので、一度選択した内容は、それを変更しない限り、保持されます。

 

5.1 Options for Cox Regression Proportional Hazard: Criterion

Variable Selection Method:生存データの最適化された回帰モデルにどの共変量を含めるかを決定する2つの方法があります。

Convergence:これらのオプションは、回帰アルゴリズムの動作を制御するものです。

 

5.2 Options for Cox Regression Proportional Hazard: Graph Options

Note:グラフ表示に選択したオプションがどちらであっても、レポートの結果は常に小数 (fractional) であらわされます。

 

5.3 Options for Cox Regression Proportional Hazard: Results

 

6. コックス回帰層別モデルオプションを設定する

層別モデルの生存曲線検定オプションを使用するのは:

 

コックス回帰層別モデル (Cox Regression Stratified Model) オプションを変更するには:

  1. 検定オプションの変更後に生存曲線を分析するに際して、曲線の作成前にデータを選択しておきたい場合は、対象とするデータ列をポインターでドラッグしておきます。

  2. Analysis タブの SigmaStat グループにある Select Test ドロップダウンリストから Cox Stratified Model を選択します。

  3. Options をクリックします。Options for Cox Stratified Model ダイアログボックスに以下の3つのタブが表示されます。

    1. Criterion:Criterion タブをクリックすると、変数選択と収束に関するオプションを指定できます。詳しくは、Options for Cox Regression Stratified Model: Criterion をご覧ください。

    2. Graph Options:Graph Options タブをクリックすると、グラフのシンボル、ライン、スケールに関するオプションが表示されます。このタブでは統計グラフ要素を追加することができます。詳しくは、Options for Cox Regression Stratified Model: Graph Options をご覧ください。

    3. Results:Results タブをクリックすると、生存時間の単位の指定とレポートやワークシートの内容を修正することができます。詳しくは、Options for Cox Regression Stratified Model: Results をご覧ください。

      SigmaPlot を次回以降起動するときは、ここで選択したオプションの内容が保持されます。

  4. 検定を続行するには、Run Test をクリックします。

 

6.1 Options for Cox Regression Stratified Model: Criterion

Variable Selection Method:生存データの最適化された回帰モデルにどの共変量を含めるかを決定する2つの方法があります。

Convergence:これらのオプションは、回帰アルゴリズムの動作を制御するものです。

 

6.2 Options for Cox Regression Stratified Model: Graph Options

Note:グラフ表示に選択したオプションがどちらであっても、レポートの結果は常に小数 (fractional) であらわされます。

 

6.3 Options for Cox Regression Stratified Model: Results

 

7. コックス回帰比例ハザードモデルを実行する

コックス回帰比例ハザードモデル分析を実行するには、分析する生存時間、ステータス、および、共変量データの列を選択する必要があります。検定ウィザードの Select Data パネルを使ってこれらの列をワークシートから選択します。

コックス回帰比例ハザードモデル分析を実行するには:

  1. 作成するグラフ、レポートに関するオプションを設定します。

  2. 検定を実行する前にお持ちのデータを選択しておきたい場合は、対象となるデータをマウスポインタでドラッグしておきます。選択するデータは、最初に (生存) time 列、次に Status 列、そして、単一または複数の Covariate 列の順番に隣接した列である必要があります。

  3. Analysis タブを選択します。

  4. SigmaStat グループにある Tests ドロップダウンリストから次を選択します:

    SurvivalCox RegressionProportional Hazards

    検定ウィザードの Cox PH Model - Select Data パネルが表示され、使用するデータ列を選択するよう指示されます。この検定を選択する前に列を選択していれば、Selected Columns リストに選択した列が表示されます。
    Cox PH Model — Select Data パネルで Time, Status, Covariate 列を選択するよう指示されます。

    1. Selected Columns リストに別のワークシート列を割り当てたい場合には、ワークシートで直接その列を選択するか、Data for ドロップダウンリストからその列を選択します。Selected Columns リストの一行目 (Time) に割り当てられるのは最初に選択した列で、次に選択した列がリストの次の行 (Status 1) に割り当てられ、次に選択した列が次の行 (Covariate) に割り当てられます。各行には、選択した列のタイトルが表示されます。

    2. 選択した内容を変更するには、リストの割り当てを選択したあと、ワークシートから列を選択しなおします。Selected Columns リストの内容をダブルクリックすることによって、列の割り当てを消去することもできます。

  5. Next をクリックして、カテゴリ型 共変量を選択します。ドロップダウンリストには Select Data パネルで選択した全ての共変量が表示されます。カテゴリ型共変量を選択するには、リストから項目をクリックすることで Selected Covariates リストに選択項目が入力されます。共変量の列がカテゴリ型としてリストされず、数値以外のデータが含まれている場合は、そのデータは欠損値として処理されます。このパネルでの選択は、カテゴリ型共変量がない研究もあるのでオプションになります。

  6. Next をクリックして、ステータス変数を選択します。Status labels に表示されるのは、Selected columns で選択した列のステータス変数です。これらを選択して、右向き矢印をクリックすることで、Event ウィンドウにイベント変数を配置し、Censored ウィンドウに打ち切り変数を配置します。
    Cox PH Model — Select Status Labels パネルで Status 変数を選択するよう指示する例

    Event labelCensored label には複数の変数を指定できます。先に進むには、Event label を必ず1つ選択する必要がありますが、打ち切り変数を選択する必要はありませんので、打ち切り値のないデータセットを使うこともできます。全ての変数を選択する必要はありません。空白のステータス変数と結びついたデータは、いずれも欠損値と見なされます。


  7. 後向き矢印をクリックすると、Event および Censored ウィンドウからラベルが除外され、これにより、選択した列ウィンドウの Status labels に戻されます。

    一度選択した Event および Censored ラベルの内容は、次回使用する際も SigmaPlot に記憶されます。次のデータセットのステータスラベルが全く同じの場合、または、既存のデータセットの分析をしなおす場合、保存された選択内容が Event および Censored ウィンドウに表示されます。

  8. Finish をクリックすると、生存グラフとレポートが作成されます。得られる結果は選択した検定オプションの内容によって変わります。

 

8. コックス回帰層別モデルを実行する

コックス回帰層別モデル (Cox Regression Stratified Model) 分析を実行するには、分析する生存時間、ステータス、および、共変量データの列を選択する必要があります。検定ウィザードの Select Data パネルを使ってこれらの列をワークシートから選択します。

Strata 列には、生存研究を複数の群に分けるのに使用する層別モデルの各種水準が含まれます。各群はにそれぞれ独自のベースライン生存曲線があります。ベースライン (baseline) という用語は、全ての共変量をゼロに設定したときの計算結果を意味します。

 

コックス回帰層別モデル分析を実行するには:

  1. 作成するグラフ、レポートに関するオプションを設定します。

  2. 検定を実行する前にお持ちのデータを選択しておきたい場合は、対象となるデータをマウスポインタでドラッグしておきます。選択するデータは、最初に Strata 列があり、次に (生存) time 列、Status 列、そして、単一または複数の Covariate 列の順番に隣接した列である必要があります。

  3. Analysis タブを選択します。

  4. SigmaStat グループにある Tests ドロップダウンリストから次を選択します:

    SurvivalCox RegressionStratified Model

    検定ウィザードの Cox Stratified Model - Select Data パネルが表示され、使用するデータ列を選択するよう指示されます。この検定を選択する前に列を選択していれば、Selected Columns リストに選択した列が表示されます。
    Cox Stratified Model の Select Data パネルで Strata, Time, Status, Covariate 列を選択するよう指示されます。

    1. Selected Columns リストに別のワークシート列を割り当てたい場合には、ワークシートで直接その列を選択するか、Data for ドロップダウンリストからその列を選択します。Selected Columns リストの一行目 (Strata) に割り当てられるのは最初に選択した列で、次に選択した列がリストの次の行 (Time) に割り当てられ、次に選択した列が (Status) に割り当てられ、次に選択した列が (Covariate) に割り当てられます。各行には、選択した列のタイトルが表示されます。

    2. 選択した内容を変更するには、リストの割り当てを選択したあと、ワークシートから列を選択しなおします。Selected Columns リストの内容をダブルクリックすることによって、列の割り当てを消去することもできます。

  5. Next をクリックして、カテゴリ型共変量を選択します。ドロップダウンリストには Select Data パネルで選択した全ての共変量が表示されます。カテゴリ型共変量を選択するには、リストから項目をクリックすることで Selected Covariates リストに選択項目が入力されます。共変量の列がカテゴリ型としてリストされず、かつ、数値以外のデータが含まれている場合は、そのデータは欠損値として処理されます。このパネルでの選択は、カテゴリ型共変量がない研究もあるのでオプションになります。

  6. Next をクリックして、ステータス変数を選択します。Status labels に表示されるのは、Selected columns で選択した列のステータス変数です。これらを選択して、右向き矢印をクリックすることで、Event ウィンドウにイベント変数を配置し、Censored ウィンドウに打ち切り変数を配置します。

    Event labelCensored label には複数の変数を指定できます。先に進むには、Event label を必ず1つ選択する必要がありますが、打ち切り変数を選択する必要はありませんので、打ち切り値のないデータセットを使うこともできます。全ての変数を選択する必要はありません。空白のステータス変数と結びついたデータは、いずれも欠損値と見なされます。

  7. Finish をクリックすると、生存グラフとレポートが作成されます。得られる結果は選択した検定オプションの内容によって変わります。

 

9. コックス回帰の結果を解釈する

コックス回帰レポートには、入力データに関する統計情報、ハザードモデルの best-fit 結果、仮説検定の結果、信頼区間、および、共変量調整済み生存確率が表示されます。各種統計量とコックス回帰でレポートされる達成度の尺度に関するさらに詳しい情報は、Hosmer & Lemeshow or Kleinbaum をご覧ください。

 

結果の説明

数値による結果に加えて、拡張された結果の説明が表示されることがあります。この説明テキストは、Options ダイアログボックスで有効または無効にすることができます。表示される小数点以下の桁数についても Options ダイアログボックスで指定できます。

 

10. コックス回帰のグラフ

コックス回帰の結果グラフには次の3つの種類があります:

 

このグラフを制御する方法は、以下の2つがあります:

 

10.1 コックス回帰グラフを作成するには

  1. Report タブを選択します。

  2. Result Graphs グループの Create Result Graph をクリックします。

    Create Result Graph ダイアログボックスにコックス回帰レポートで選択可能なグラフが表示されます。

  3. 作成したいレポートグラフを選択したら、OK をクリックするか、リスト内のグラフをダブルクリックします。

  4. Select value type ドロップダウンリストから以下のいずれかを選択します。

    Mean
    Median
    Baseline
    User-Defined

    この下に表示される2列のリストの1列目には共変量 (covariates) の名称が表示されます。これらの共変量は検定ウィザードで先に指定したものです。2列目の値は Select value type ドロップダウンリストで選択したタイプの値に対応します。

    User-Defined を選択した場合、共変量の値は全てゼロに初期化され (Baseline と同じ)、 Enter value: ボックスに値を入力できるようになります。

  5. 共変量の値を変更するには、Covariate 列から共変量を選択し、Enter value: ボックスに別の値を入力し、Change をクリックします。Value type の選択後、共変量の値の変更が完了したら、Close をクリックします。

    グラフが表示されます。