データを見ないで難しいので、汎用的にしてみます。まず、survival
パッケージで使用するためにデータフレームがどのように見えるかを示す2つの主な方法:
ベアボーン
- ID-分析の各ユニット(患者、国、組織など)を識別する一意の変数
- イベント -テストされたイベントの発生を示すバイナリ変数(例えば、死、、、革命、破産)
- 時間 -イベントまで、または情報が終了するまでの時間(右打ち切り)。Coxモデルは継続的な時間で使用するのが最適ですが、研究が何年にもわたって(特に国に関して)毎月のスペルで実行できます。
- (しばしば)いくつかの共変量
event
10年間(月単位で)内戦に陥った国()の危険を見つけようとする、作り上げのモデルを使用してみましょう。時間に依存しない単一の共変量(previousCivilWar
)の使用:
# the first country was censored before an event and the second
# experienced the event after 8 years
id time event prevCivilWar
1 120 0 0
2 96 1 1
時間依存の共変量の追加:方法1
- 共変量 -この場合、元の値と、それが変更されたかどうか、何に変更されたかを確認する必要があります。
- 時間変数を開始と終了に変更する -(いずれかの)共変量の変更時間を示す必要がある場合
ここでは、バイナリ変数を追加して、40%を超える貧困を示しますis40pov
。
id time1 time2 event prevCivilWar is40pov
1 0 80 0 0 0
1 80 120 0 0 1
2 0 24 0 1 0
2 24 60 0 1 1
2 60 96 1 1 1
時間依存の共変量を使用する場合、変化するまでの正確な時間枠を指定する必要があります任意の共変量が発生しました。時間は重複する必要があることに注意してください。特定のサブジェクトの共変量に変化がない場合は、1行で十分です。
方法2-連続的に変化する共変量に最適
これには、k スペルがあるため、一意のIDごとの行(k打ち切られた場合は行、イベントが以前に発生した場合はそれ以下)。したがって、特定の時間枠の情報が調査されたデータベースがある場合は、自分にとって意味のあるスペル長を決定します(これは理論的には意味があります)。共変量が1時間ごとに変化する場合-1時間ごとにするなど。 。スペルの長さ(たとえば、月)と合計時間(たとえば、10年)を決定すると、各IDは<=120 呪文。
あなたが必要な場合は、(空で縦方向のデータセットを作成してNA
、0
時間依存の共変量のために、または何でも)、データ、および各呪文の日付/時刻のために2つの余分なユーティリティの列を作ります。次に、データベースにアクセスして、それらの日付/時刻での共変量の特定の値をフェッチして入力できます。特定の行で共変量に変更がなくても問題ありません。あなたは次のようなものになるでしょう:
# The variable pov is the poverty percent of population and measured monthly
id time1 time2 event prevCivilWar pov
1 0 1 0 0 0.34
1 1 2 0 0 0.34
...
1 79 80 0 0 0.43
...
1 119 120 1 0 0.41
2 0 1 0 1 0.25
...
2 23 24 0 1 0.42
...
2 95 96 1 1 0.58
時間依存の共変量と係数の詳細については、 Therneau、Crowson、Atkinsonの2016 Vignetteを参照してください。