第 78 章 時間依存變量 Time-dependent variables 和脆弱模型 frailty model

78.1 時間依存變量指的是什麼

生存分析的模型中,我們常常會使用一些實際上會經過時間變化而變化的預測變量。這些變量被稱爲時間依存型變量(time-dependent variables)。有些教科書會把這種類型的變量命名爲自更新變量(time-updated)或者時變變量(time-varying)。實際的例子有:

  • 某觀察型研究使用患者病例數據庫分析患有囊性肺纖維化(cystic fibrosis)的病人的生存情況。在病人數據庫隨訪收集數據的過程中,有些患者接受了肺部臟器的移植,有些患者沒有。那麼有沒有肺部臟器移植手術就是影響患者死亡率,或者說生存概率的重要指標之一。那麼這樣的模型中,是否接受過移植手術這一變量就是一個時間依存型變量。它的特徵除了是一個二分類變量以外,患者只能從 0(未接受移植)變成 1(接受過移植),而不能反過來。

  • 某觀察型隊列研究的課題是分析研究對象的血壓水平和心臟疾病之間的關係。在隊列研究的隨訪中,研究對象的血壓可能在每次隨訪時都有相應的測量數據。在這樣的實驗情形下,每次隨訪獲得的血壓數據就是一個時間依存型的連續變量。

時間依存型變量除了有二分類的,連續型的等等不同之外,它還有另外一個更加重要的性質需要考慮並且加以區分。這就是看我們想要討論的時間依存型變量的時間依存性質的來源,是內在性的(internal)還是外源性(external)的。

內在性的時間依存變量是指這個變量的隨時間的變化的特性是只能在觀察對象未發生我們所關心的事件(比如死亡事件)之前測量獲取的。而且這種內在性還體現在如果不與實驗對象取得聯繫的話,更新之後的數據研究者是無法得到的。比方說需要從仍然存活的患者身上提取血液樣本測量一些生物指標,比如是否接受過臟器移植,或者是最近的血壓值是多少等等。

外源性的時間依存變量是指這樣的變量雖然隨着時間變化,但是不需要通過聯繫患者或者實驗對象也能夠獲取想要的數據。年齡是最典型的一個例子,你只要知道患者在起始時的年齡,也就知道了在隨訪過程中患者的年齡。另外的常見外源性時間依存變量的例子還有如一些臨牀試驗中隨着患者病程的變化而按照事先準備或者計劃好的劑量調整治療方案。再比如研究空氣污染水平和患者哮喘之間關係的空氣污染水平數據,可以通過外來的如氣象局提供的歷史數據來查詢獲得。

這兩種類型的時間依存變量在進行數據分析的時候,常常不需要加以刻意的區分,但是在結果的解讀和解釋的時候就需要考慮這兩種不同類型的時間依存性質給分析結果帶來的影響。

在正式進入時間依存變量的數學模型之前,我們需要引入時間依存變量的數學標記方法。一般地,\(x\)被用於表示預測變量,它可以是一個單一的變量,也可以是一個由許多預測變量組成的向量。在處理時間依存型變量的時候,我們通常使用 \(x(t)\) 來表示。其含義就是在時間點 \(t\) 時預測變量的值。如果 \(x(t)\) 是一個向量,它可以同時表示時間依存型變量和其他的不隨時間變化而變化的變量。如果用 \(x(t)\) 表示一個非時間依存型變量的話,它就表示無論時間 \(t\) 是多少,\(x\) 值的大小都始終保持不變。

78.2 Extended Cox model 把Cox模型擴展開去

Cox比例風險模型是很容易被擴展,用來加入時間依存型預測變量。當Cox比例風險模型中加入了時間依存型變量,它的數學模型被寫作:

\[ h(t|x(t)) = h_0(t) e^{\beta^Tx(t)} \]

這一數學模型其實是在說我們對該預測變量感興趣的是在時間點 \(t\) 時的測量值是否和發生相關事件的風險(hazard)有關係。也就是在這個模型裏,時間依存變量的最新值,是我們關心的最主要預測變量。這裏的基線風險(baseline hazard, \(h_0(t)\))應該被解釋爲是一個所有的預測變量從起始直至所有追蹤結束時均爲零的觀察對象。[This formulation is assumed that we are interested in the explanatory variable at the time of the event of interest. In other words, it means that only the current value of the covariates (i.e. at time t) affects the hazard. Here, the baseline hazard function is interpreted as the hazard function for an individual for whom all the variables are zero (from the time origin and during all the follow-up).]

那麼這個模型的對數風險度比(log hazard ratios)又該怎麼理解呢?爲了便於解釋,先考慮只有一個時間依存型變量的模型 \(x_1(t)\)。那麼對象編號爲 \(r\) 和對象編號爲 \(s\) 的兩人,他們之間的風險度比 (hazard ratio):

\[ \begin{aligned} \frac{h(t|x_{1r}(t))}{h(t|x_{1s}(t))} & = \frac{h_0e^{\beta_1x_{1r}(t)}}{h_0e^{\beta_1x_{1s}(t)}} \\ & = \exp(\beta_1(x_{1r}(t) - x_{1s}(t))) \end{aligned} \]

所以,簡單地解釋就是,\(\beta_1\) 比較的是\(r,s\)兩個觀察對象的預測變量 \(x_1\) 在任意一個時間點時相差一個單位時的風險度。值得指出的是,這裏回歸係數的解釋暗示了 時間依存變量\(x_1\)在任意一個時間點時,改變一個單位的風險度比是固定不變的。但是,由於 \(x_{1r}(t) - x_{1s}(t)\) 是會隨時間 \(t\) 變化的(也就是風險度比不再是成固定比例的,而是允許它隨時間變化而發生改變)。這個Cox風險模型就不能再被叫做“比例”風險模型,它被叫做Cox擴展模型(extended Cox Model)

78.2.1 練習題 exercise 8.1

假設我們使用下面這樣的Cox擴展模型來研究關於肺部臟器移植與否的時間依存變量和死亡之間的關係:

\[ h(t|x) = h_0(t)\text{exp}(\beta x(t)) \]

如果患者\(r\)在時間點5時進行了肺部的臟器移植,患者\(s\)則整個隨訪中都沒有接受臟器移植。請試着計算下列時間點時兩名患者之間的死亡風險度比:

  1. 時間點4;
  2. 時間點6。

(我們假設兩名患者在這兩個時間點時都依然還是存活着的)

78.2.2 解答

  1. 在時間點4時,兩名患者都沒有接受臟器移植,此時,他們的死亡風險度都是基線風險:\(h(t|x) = h_0(t)\),故在時間點4時,他們的死亡風險度比是 1。
  2. 在時間點6時,患者\(r\)的風險度是:\(h(t|x) = h_0(t)\text{exp}(\beta)\)。患者 \(s\) 的風險度是:\(h(t|x) = h_0(t)\)。所以,在時間點6時,患者\(r,s\)之間的死亡風險度比就是 \(\text{exp}(\beta)\)

在Cox擴展模型下,加入了時間依存變量之後,模型所使用的偏似然(partial likelihood)是:

\[ L_p = \prod_j\frac{\text{exp}\beta^Tx_{i_j}(t_j)}{\sum_{k\in R_j}\text{exp}\beta^Tx_k(t_j)} \]

在這個偏似然中,我們實際比較了在時間點 \(t_j\) 時,實際觀察到的有發生事件的對象的預測變量 \(x_{i_j}(t_j)\) 的風險度,和在時間點 \(t_j\) 時仍然存在在觀察數據集合(the risk set at time \(t_j\))中的個體(假設人數爲 \(R_j\))的預測變量 \(x_k(t_j)\)的風險度。這裏需要特別指出的是,當使用這個偏似然作爲估計的工具時,我們需要知道所有觀察對象,當他/她/它仍然處在觀察數據集合中的時候,每當有新的事件發生被觀察到,那每個新時間發生的時間點,模型中所有預測變量的最新值(包括時間依存變量本身)。這個假設對於二分類(是否接受移植臟器)時間依存變量來說不難,但是當時間依存變量是連續型變量的時候,要知道每一次事件發生時所有存在在觀察數據集合中每一名觀察對象的觀察值(例如血壓),是無法辦到的。這是因爲血壓值其實是時時刻刻都處在變化中的,但是我們實際對患者隨訪測量血壓時,都只能獲得患者在某個時間點上的血壓值。因此,這個Cox擴展模型中如果存在連續性的時間依存變量,那麼模型的另一個隱含的前提條件是,假設患者或者實驗對象的連續性時間依存變量在前後兩次測量值獲得的間隔期內是保持不變的(assuming that it stays constant from the last time it has been observed)。

78.3 時間依存變量數據的結構

假設有一個隨時間變化而變化的二分類型解釋變量 \(x(t)\),假設有三名從時間點 0 開始參與其中的實驗對象:

  • 實驗對象1,她/他的 \(x(t)\) 隨着時間沒有發生變化,在整個隨訪過程中都是 \(x(t) = 0\)的狀態,在時間點10時該患者失去聯繫(刪失值,censor)。
  • 實驗對象2,她/他的 \(x(t)\) 在隨訪時間 5 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點20時該患者失去聯繫(刪失值,censor)。
  • 實驗對象3,她/他的 \(x(t)\) 在隨訪時間 15 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點25時該患者死亡 (event = 1)。

用表格來說明這三人在追蹤隨訪過程中的狀態如下:

其中的實驗對象:

  • 實驗對象1,她/他的 \(x(t)\) 隨着時間沒有發生變化,在整個隨訪過程中都是 \(x(t) = 0\)的狀態,在時間點10時該患者失去聯繫(刪失值,censor)。
  • 實驗對象2,她/他的 \(x(t)\) 在隨訪時間 5 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點20時該患者失去聯繫(刪失值,censor)。
  • 實驗對象3,她/他的 \(x(t)\) 在隨訪時間 15 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點25時該患者死亡 (event = 1)。

用表格來說明這三人在追蹤隨訪過程中的狀態如下:

其中的實驗對象:

  • 實驗對象1,她/他的 \(x(t)\) 隨着時間沒有發生變化,在整個隨訪過程中都是 \(x(t) = 0\)的狀態,在時間點10時該患者失去聯繫(刪失值,censor)。
  • 實驗對象2,她/他的 \(x(t)\) 在隨訪時間 5 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點20時該患者失去聯繫(刪失值,censor)。
  • 實驗對象3,她/他的 \(x(t)\) 在隨訪時間 15 之前均爲 \(x(t) = 0\),在該時間點之後 \(x(t) = 1\),在時間點25時該患者死亡 (event = 1)。

用表格來說明這三人在追蹤隨訪過程中的狀態如下:

表 78.1: Example data for individuals with time-dependent explanatory variable x(t). Each individual has a line of data for each time period over which the explanatory variables takes a different value. The status refers to whether the individual has the event (1) or not (0) at the end of the interval.
Individual Time.origin Start.time Stop.time x.t. status
1 0 0 10 0 0
2 0 0 5 0 0
2 0 5 20 1 0
3 0 0 15 0 0
3 0 15 25 1 1

表格 78.1 中時間區間其實是左開右閉的。所以2號實驗對象在時間段 \((0, 5]\)\(x(t) = 0\),但是在時間段 \((5, 20]\)\(x(t) = 1\)

實際研究數據的例子:

## 
## . use "backupfiles/stanford.dta"
## 
## . list in 1/10
## 
##      +-----------------------------------------------------------------+
##      | id   sex         dob      datein      datetr     dateout   dead |
##      |-----------------------------------------------------------------|
##   1. |  1     0   10jan1937   15nov1967           .   03jan1968      1 |
##   2. |  2     0   02mar1916   02jan1968           .   07jan1968      1 |
##   3. |  3     0   19sep1913   06jan1968   06jan1968   21jan1906      1 |
##   4. |  4     0   23dec1927   28mar1968   02may1968   05may1968      1 |
##   5. |  5     0   28jul1947   10may1968           .   27may1968      1 |
##      |-----------------------------------------------------------------|
##   6. |  6     0   08nov1913   13jun1968           .   15jun1968      1 |
##   7. |  7     0   29aug1917   12jul1968   31aug1968   17may1970      1 |
##   8. |  8     0   27mar1923   01aug1968           .   09sep1968      1 |
##   9. |  9     0   11jun1921   09aug1968           .   01nov1968      1 |
##  10. | 10     1   31jan1939   22feb1974   31mar1974   01apr1974      0 |
##      +-----------------------------------------------------------------+

其中

  • datein 是該名患者加入實驗的日期;
  • datetr 是該名患者接受心臟移植手術的日期(如果沒有接受手術則爲缺失值);
  • dateout 是患者離開實驗追蹤的日期(因爲死亡或者刪失);
  • dead 是實驗追蹤截止時患者的生存狀態(死亡1,刪失0)。

爲了讓這個數據能夠進行 Cox 比例風險模型的擬合,在 Stata 中需要使用到 stsplot 命令,當患者在隨訪中曾經接受過心臟移植手術,那麼他/她的數據將被分成兩行,前一行是移植手術前,後一行則是移植手術後的數據。患者如果沒有接受心臟移植手術,她/他的數據就只有一行。

## 
## . use "backupfiles/stanford.dta"
## 
## . replace datetr = mdy(01, 01, 2001) if datetr == .
## (34 real changes made)
## 
## . 
## . stset dateout, id(id) origin(datein) scale(365.25) f(dead)
## 
##                 id:  id
##      failure event:  dead != 0 & dead < .
## obs. time interval:  (dateout[_n-1], dateout]
##  exit on or before:  failure
##     t for analysis:  (time-origin)/365.25
##             origin:  time datein
## 
## ------------------------------------------------------------------------------
##         103  total observations
##           3  multiple records at same instant                   PROBABLE ERROR
##              (dateout[_n-1]==dateout)
##           2  observations end on or before enter()
##           1  observation begins on or after (first) failure
## ------------------------------------------------------------------------------
##          97  observations remaining, representing
##          97  subjects
##          72  failures in single-failure-per-subject data
##      86.793  total analysis time at risk and under observation
##                                                 at risk from t =         0
##                                      earliest observed entry t =         0
##                                           last observed exit t =  4.925394
## 
## . 
## . stsplit post = datetr, at(0)
## (64 observations (episodes) created)
## 
## . 
## . replace post = post+1
## (161 real changes made)
## 
## . 
## . list in 1/20
## 
##      +-----------------------------------------------------------------------+
##   1. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  1 |   0 | 10jan1937 | 15nov1967 | 01jan2001 | 03jan1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      2875    |   .13415469    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   2. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  2 |   0 | 02mar1916 | 02jan1968 | 01jan2001 | 07jan1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      2923    |   .01368925    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   3. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  4 |   0 | 23dec1927 | 28mar1968 | 02may1968 | 02may1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3009    |   .09582478    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   4. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  4 |   0 | 23dec1927 | 28mar1968 | 02may1968 | 05may1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3009    |   .10403833    |   .09582478    |       1    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   5. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  5 |   0 | 28jul1947 | 10may1968 | 01jan2001 | 27may1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3052    |   .04654346    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   6. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  6 |   0 | 08nov1913 | 13jun1968 | 01jan2001 | 15jun1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3086    |    .0054757    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   7. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  7 |   0 | 29aug1917 | 12jul1968 | 31aug1968 | 31aug1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3115    |   .13689254    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   8. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  7 |   0 | 29aug1917 | 12jul1968 | 31aug1968 | 17may1970 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3115    |   1.8453114    |   .13689254    |       1    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##   9. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  8 |   0 | 27mar1923 | 01aug1968 | 01jan2001 | 09sep1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3135    |   .10677618    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  10. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      |  9 |   0 | 11jun1921 | 09aug1968 | 01jan2001 | 01nov1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3143    |   .22997947    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  11. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 10 |   0 | 20may1928 | 13sep1967 | 01jan2001 | 18sep1967 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      2812    |   .01368925    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  12. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 11 |   0 | 22aug1920 | 15aug1968 | 09sep1968 | 09sep1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3149    |   .06844627    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  13. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 11 |   0 | 22aug1920 | 15aug1968 | 09sep1968 | 14jan1969 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3149    |   .41615332    |   .06844627    |       1    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  14. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 12 |   0 | 09jul1915 | 17sep1968 | 01jan2001 | 24sep1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3182    |   .01916496    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  15. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 13 |   0 | 22feb1914 | 19sep1968 | 05oct1968 | 05oct1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3184    |   .04380561    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  16. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 13 |   0 | 22feb1914 | 19sep1968 | 05oct1968 | 08dec1968 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3184    |   .21902806    |   .04380561    |       1    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  17. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 14 |   0 | 16sep1914 | 20sep1968 | 26oct1968 | 26oct1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3185    |   .09856263    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  18. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 14 |   0 | 16sep1914 | 20sep1968 | 26oct1968 | 07jul1972 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3185    |   3.7946612    |   .09856263    |       1    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  19. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 16 |   0 | 16may1919 | 26oct1968 | 22nov1968 | 22nov1968 |    . |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    0    |      3221    |   .07392197    |           0    |       0    |
##      +-----------------------------------------------------------------------+
## 
##      +-----------------------------------------------------------------------+
##  20. | id | sex |       dob |    datein |    datetr |   dateout | dead | _st |
##      | 16 |   0 | 16may1919 | 26oct1968 | 22nov1968 | 29aug1969 |    1 |   1 |
##      |----------------------------------------------------------+------------|
##      |   _d    |   _origin    |          _t    |         _t0    |    post    |
##      |    1    |      3221    |   .84052019    |   .07392197    |       1    |
##      +-----------------------------------------------------------------------+
## 
## . 
## . stcox post
## 
##          failure _d:  dead
##    analysis time _t:  (dateout-origin)/365.25
##              origin:  time datein
##                  id:  id
## 
## Iteration 0:   log likelihood = -283.80782
## Iteration 1:   log likelihood = -283.79628
## Iteration 2:   log likelihood = -283.79628
## Refining estimates:
## Iteration 0:   log likelihood = -283.79628
## 
## Cox regression -- Breslow method for ties
## 
## No. of subjects =           97                  Number of obs    =         161
## No. of failures =           72
## Time at risk    =   86.7926078
##                                                 LR chi2(1)       =        0.02
## Log likelihood  =   -283.79628                  Prob > chi2      =      0.8792
## 
## ------------------------------------------------------------------------------
##           _t | Haz. Ratio   Std. Err.      z    P>|z|     [95% Conf. Interval]
## -------------+----------------------------------------------------------------
##         post |   .9550011   .2889517    -0.15   0.879     .5277868    1.728022
## ------------------------------------------------------------------------------

請問,經過Stata調整過後的數據中,_t0, t, post, _d 分別是什麼意義的數字?

  • _t0 是追蹤的時間起點,對於有接受心臟移植的患者來說,第二行的 _t0 是接受完移植手術後的時間起點;
  • t 是生存時間,或者刪失值發生之前的時間;
  • _d 是事件指示變量(event indicator),對於有接受心臟移植的患者來說,她/他有兩行數據,第一行是手術前,第二行是手術後。當患者死亡(event = 1),那麼那一行的 _d = 1,之前的每一行都是0。每名患者最多只有一行發生死亡事件;
  • post 則是指示該行患者數據是處於心臟移植手術之前(post = 0),還是之後(post = 1)。例如,第7名患者進入實驗的起點時間是1968年7月12日,她/他在1968年8月31日 (即0.13698245年之後)這天接受了心臟移植手術。所以在這兩個時間點之內是該患者的第一行數據,被記錄爲手術前 (post = 0),這之後該患者又被持續追蹤到1970年5月17日,在這段時間內的數據是患者的第二行數據,被記錄爲手術後 (post = 1);
  • stcox post 的結果 Haz. Ratio = 0.96, 95%CI: 0.528, 1.728的涵義是,接受心臟手術之後,患者的死亡風險相比不接受心臟移植手術平均要低 4%,但是這個風險比 (HR)的 95%信賴區間是 (0.53, 1.73),包含了零假設時的 1,所以數據分析的結果是心臟手術降低的死亡風險不能達到顯著性效果,沒有統計學意義。

78.3.1 值得注意的點

  • 如果說我們感興趣的時間依存變量是外源性的 (external time-dependent variable),那麼經典的條件風險 (conditional hazard) 和條件生存概率 (conditional survival)的關係仍然是有意義的:

\[ S(t | x(u), u\leqslant t) = \text{exp}(-\int_0^t h_0(u)\text{exp}(\beta^Tx(u))du) \]

  • 如果說時間依存變量本身是內源性的(internal time-dependent variable),那麼上面這個經典的條件風險和條件生存概率之間的關係就是沒有意義的了。因爲內源性的變量必須在患者生存的時候才能測量得到,如果你測量到了患者的時間依存變量就意味着該患者的生存概率是1。

  • 另一個需要注意的點是在包括了時間依存變量的Cox比例風險模型中,當你加入了在暴露和結果的因果關係通路上的變量作爲共變量時,模型會變得不可解釋。舉例來說,如果治療心肌梗死的藥物是通過降低血壓來達到降低心肌梗死發生的概率的話,假設模型中調整的是跟隨時間發生變化的血壓作爲共變量,那麼這個模型中上升或者下降的血壓就會把治療效果給抵消掉(cancel out the treatment effect)。在這樣的場景設定中,血壓的變化本身是作爲主要暴露因素(治療與否)和主要結果因素(心肌梗死的發生概率)之間的媒介 (mediator)。

78.4 Frailty Models (脆弱模型?)

脆弱模型是時間事件數據的隨機效應模型。

Frailty models are random effects models for time-to-event data.

78.4.1 Individual frailty model

\[ h_i(t|x_i) = \alpha_ih(t|x_i) = \alpha_i h_0(t)\exp(\beta^Tx_i) \]

78.4.2 Application to a Weibull model

\[ h(t|x_i,\alpha_i) = \alpha_i \kappa \lambda t^{\kappa - 1}e^{\beta^Tx} \]

78.4.3 Shared frailty model

\[ h(t|x_{ij}, \alpha_i) = \alpha_j h_0(t)e^{\beta^Tx_{ij}} \]