Main Content

hazardratio

コックス モデルのベースラインに対するハザードの推定

説明

hazard = hazardratio(coxMdl,X) は、当てはめたコックス比例ハザード モデル coxMdl について、予測子 X を使用してベースラインに対する推定ハザードを返します。

hazard = hazardratio(coxMdl,X,Stratification) は、予測子 X と階層化レベル Stratification を使用してベースラインに対する推定ハザードを返します。XStratification の行数は同じでなければなりません。

メモ

階層化変数を使用して coxMdl に学習させ、予測子変数 X を渡す場合は、hazardratio に階層化変数も渡さなければなりません。

hazard = hazardratio(___,'Baseline',baseline) は、前の構文におけるいずれかの入力引数の組み合わせを使用して、指定されたベースラインに対するハザードを推定します。

すべて折りたたむ

電球の寿命のシミュレーション データが格納された lightbulb データ セットでコックス比例ハザード回帰を実行します。電球データの 1 列目には 2 種類の電球の寿命 (時間単位) が含まれています。2 列目には電球が蛍光灯と白熱灯のどちらであるかを示すバイナリ変数が含まれています。0 は電球が蛍光灯であることを示し、1 は白熱灯であることを示します。3 列目には打ち切り情報が含まれています。0 は電球が故障するまで観測されたことを示し、1 は観測が打ち切られたことを示します。

電球の寿命について、打ち切りを考慮してコックス比例ハザード モデルを当てはめます。予測子変数は電球のタイプです。

load lightbulb
coxMdl = fitcox(lightbulb(:,2),lightbulb(:,1), ...
    'Censoring',lightbulb(:,3));

当てはめたモデルの既定のベースラインを表示します。

defaultBaseline = coxMdl.Baseline
defaultBaseline = 0.5000

このベースラインに対する白熱灯電球 (1) のハザード率を計算します。

defaultHazard = hazardratio(coxMdl,1)
defaultHazard = 10.6238

蛍光灯電球 (0) に対する白熱灯電球のハザード率を計算します。

relHazard = hazardratio(coxMdl,1,'Baseline',0)
relHazard = 112.8646

白熱灯電球のハザード率は蛍光灯電球のハザード率の 100 倍を超えると推定されます。

readmissiontimes のデータからコックス モデルを作成します。このデータでは、0 は男性患者、1 は女性患者を示します。

load readmissiontimes
coxMdl = fitcox([Age,Sex,Weight],ReadmissionTime,'Censoring',Censored);

体重 200 ポンドの 40 歳男性について、ベースライン ハザードに対する相対ハザードを計算します。

hazard = hazardratio(coxMdl,[40 0 200])
hazard = 4.3112

同じ男性について、体重 150 ポンドの 50 歳女性に対するハザードを計算します。

hazard2 = hazardratio(coxMdl,[40 0 200],'Baseline',[50 1 150])
hazard2 = 5.2053

coxModel データを読み込みます (これはコックス比例ハザード モデル オブジェクトの例で生成されるシミュレーション データです)。coxMdl という名前のモデルには、階層化レベルが 3 つ (1、2、および 3) と 3 つのカテゴリカル値 (1、1/20、および 1/100) をもつ予測子 X が含まれています。

load coxModel

予測子の値 categorical(1) と階層化レベル 3 のベースラインに対するハザード率を求めます。

X = categorical(1);
stratification = 3;
hazard = hazardratio(coxMdl,X,stratification)
hazard = 12.7096

ベースライン 0 に対する率を計算します。

hazard = hazardratio(coxMdl,X,stratification,'Baseline',0)
hazard = 95.5127

予測子 categorical(1/100) のベースライン 0 に対する率を計算します。

X = categorical(1/100);
hazard = hazardratio(coxMdl,X,stratification,'Baseline',0)
hazard = 1

入力引数

すべて折りたたむ

当てはめたコックス比例ハザード モデル。CoxModel オブジェクトとして指定します。coxMdl の作成には fitcox を使用します。

ハザードの推定用のデータ。行列または table として指定します。データの型は coxMdl の学習に使用したデータと同じでなければなりません。

データ型: double | table | categorical

階層化レベル。coxMdl の学習に使用された型と同じ型の変数として指定します。Stratification には X と同じ数の行を指定します。

データ型: single | double | logical | char | string | table | cell | categorical

ベースライン ハザード。実数のスカラーまたは行ベクトルとして指定します。

  • スカラーの値はすべての予測子に適用されます。

  • 行ベクトルの値のエントリ数は予測子の数と同じでなければなりません。

このベースラインに対するハザード率が返されます。

例: [1 20 100]

データ型: single | double

出力引数

すべて折りたたむ

ベースラインに対するハザード率。非負のベクトルとして返されます。hazard はベースライン ハザードに乗算する係数であるため、予測子の値 X と該当する場合は階層化レベル Stratification を使用して個々の相対ハザードを取得できます。

バージョン履歴

R2021a で導入