99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁(yè)精彩閱讀生存曲線的估計(jì)方法(1):先看懂這個(gè)表
生存曲線的估計(jì)方法(1):先看懂這個(gè)表
2020-10-20
收藏

作者:丁點(diǎn)helper

來(lái)源:丁點(diǎn)幫你

前面兩篇文章初步介紹了生存分析基本入門(mén)的內(nèi)容,今天我們來(lái)看看實(shí)際應(yīng)用中怎么估計(jì)生存率。具體的方法和術(shù)語(yǔ)我們先不講,首先來(lái)看例子。

案例:為了解肺癌患者接受某種治療后的生存狀況,研究者收集了12名肺癌患者手術(shù)加化療的住院資料。他們的生存時(shí)間(月)分別為:2, 5, 8, 9, 9+, 10, 13, 13, 15+, 18, 20, 23+。

試問(wèn),采用該治療方案的12名患者的術(shù)后生存率如何?(案例來(lái)自相關(guān)教科書(shū),有刪改)

如何來(lái)評(píng)判這種治療方法的生存率呢?我們從“生存數(shù)據(jù)”入手,關(guān)于生存數(shù)據(jù)的詳細(xì)解釋大家可以看第一篇文章。

今天的文章我們來(lái)一步步搞懂上面這張表。

案例中介紹了,一共有12名住院患者,他們的生存時(shí)間(用 表示)分別為:2, 5, 8, 9, 9+, 10, 13, 13, 15+, 18, 20, 23+,單位是月。第一個(gè)問(wèn)題,有些數(shù)字有加號(hào),有些沒(méi)有,是為什么呢?

有加號(hào)的表示,該數(shù)據(jù)是“刪失數(shù)據(jù)”,什么是刪失數(shù)據(jù)?(以及什么是完全數(shù)據(jù)?)可以看第一篇文章。這里簡(jiǎn)單理解就是,患者失聯(lián)了,后續(xù)的信息無(wú)法獲取。

比如上面的生存時(shí)間數(shù)據(jù)中有一個(gè)“9+”,可以理解為,跟蹤了9個(gè)月,患者一直存活且保持著聯(lián)系,可是當(dāng)下一次(比如第10個(gè)月開(kāi)始)去找他的時(shí)候(專(zhuān)業(yè)名詞叫“隨訪”),找不到了,說(shuō)的不好聽(tīng)一點(diǎn),是死是活不知道。

因此,對(duì)于這樣的數(shù)據(jù),我們就叫“刪失數(shù)據(jù)”。由于患者確實(shí)可能還活著,只是失聯(lián),謹(jǐn)慎起見(jiàn),我們就在上一次隨訪的數(shù)據(jù)“9”后面加一個(gè)“+”,表示他存活的時(shí)間可能長(zhǎng)于9個(gè)月。

其他的刪失數(shù)據(jù)也這樣理解。搞懂刪失后,我們?cè)賮?lái)看這個(gè)表。表格的第(1)列序號(hào)代表什么呢?排序的號(hào)碼!

將上面12名患者的生存時(shí)間從小到大排序并編號(hào)。

——注意兩點(diǎn):

第一,完全數(shù)據(jù)和刪失數(shù)據(jù)要用不同的編號(hào),比如上面的“9”和“9+”一個(gè)是編號(hào)“4”,一個(gè)是編號(hào)“5”,完全數(shù)據(jù)列在刪失數(shù)據(jù)前面;

第二,其他情況下,相同的生存時(shí)間編號(hào)相同,比如上面有兩個(gè)“13”,所以都編為“7”。

編號(hào)完成后,就把相應(yīng)的生存時(shí)間排進(jìn)去,見(jiàn)上表第(2)列。

這里大家需要熟悉一些表達(dá),比如t?=2、t?=5 ... 就是指隨訪的第一個(gè)時(shí)間點(diǎn)是2個(gè)月,隨訪的第二個(gè)時(shí)間點(diǎn)是第5個(gè)月。

接著往后看,第(3)列是“死亡例數(shù)”,就是指在這個(gè)時(shí)間段的死亡人數(shù)是多少?

比如在第一個(gè)時(shí)間段內(nèi)( t?=2 )有1名患者死亡,就表示為:d?=1;

同理,在第二個(gè)時(shí)間段內(nèi)也有1名死亡(注意是: t?~ t?,就是2月末到第5月末),表示為:d?=1;

后續(xù)依次類(lèi)推,這里需要注意的是,“死亡例數(shù)”記錄的是某個(gè)特定的時(shí)間段內(nèi)的死亡人數(shù),不是累計(jì)的死亡人數(shù)。

表格中第(4)列稱(chēng)作“刪失數(shù)據(jù)”,就是記錄那些帶“+”號(hào)的數(shù)據(jù)的,可以發(fā)現(xiàn),上面每一個(gè)刪失數(shù)據(jù)都單獨(dú)做一例錄入。

第(5)列“期初人數(shù)”就與上面“死亡例數(shù)”相對(duì)應(yīng),就是指這個(gè)觀察期開(kāi)始時(shí)的人數(shù)。

第一個(gè)數(shù)( n?)是“12”,就表示剛開(kāi)始觀察的人數(shù)是12人。

隨著觀察時(shí)間的延長(zhǎng),有患者死亡,就算作是一期。比如,到第2月末時(shí),有1名患者死亡,那么下一個(gè)觀察期的“期初人數(shù)”就是 12-1 = 11,因此: n?=11,到第5月末時(shí),又一名患者死亡,第3期(i = 3)“期初人數(shù)”就是 11-1 = 10,表示為: n?=10。

后面的以此類(lèi)推,由此我們可以得出一個(gè)計(jì)算公式:

后面兩列——死亡概率和生存概率也很好理解,只有一點(diǎn),就是要明白這里計(jì)算的概率都是以一期為單位的,而不是累積的。

比如第一期( i=1),一名患者死亡,所以,死亡概率就是:1/12;對(duì)應(yīng)的生存概率就是:1-1/12。

第二期( i=2),也有一名患者死亡,死亡概率:1/11; 生存概率:1-1/11。

需要注意,這里的分母變成了11。原因還是:這里是以每一期為一個(gè)單位,計(jì)算時(shí),都以該期的“期初人數(shù)”為分母。

搞清楚了死亡概率和生存概率,終于迎來(lái)了我們的主角“生存率”。

這個(gè)生存率怎么計(jì)算?很簡(jiǎn)單,就是各期生存概率的乘積。

后面的依次類(lèi)推,就是這么簡(jiǎn)單。

我們來(lái)驗(yàn)算一下,比如:

用計(jì)算器算一下,這個(gè)也可以口算,你發(fā)現(xiàn)了么?

至于為什么這里都要加一個(gè)“ ^ ”以及上表中最后一列“生存率的標(biāo)準(zhǔn)誤”怎么理解和計(jì)算,我們留到下一篇文章。

以上我們估算生存率的方法教科書(shū)稱(chēng)為:Kaplan-Meier法,又稱(chēng)乘積極限法,可以簡(jiǎn)單記為K-M法。

其基本思想是:將所有觀察對(duì)象的生存時(shí)間(包括刪失數(shù)據(jù))由小到大依次排列,對(duì)每個(gè)時(shí)間點(diǎn)進(jìn)行死亡概率、生存概率和生存率的估計(jì)。

回顧上面的文章,是否就是這個(gè)過(guò)程呢?

K-M法一般用于觀察對(duì)象數(shù)目較少的沒(méi)有進(jìn)行特定分組的資料(如同本例)。這樣可以能夠充分利用每條記錄的信息,估計(jì)不同生存時(shí)間點(diǎn)的生存率。

以上就是今天的內(nèi)容。我們可以看到,實(shí)際應(yīng)用中生存率的計(jì)算并不難,就是幾個(gè)概率相乘。

學(xué)習(xí)起來(lái)真正的難點(diǎn)是一整套數(shù)據(jù)的記錄和整理方法,而且還出現(xiàn)“刪失”這種看起來(lái)就頭大的術(shù)語(yǔ)。

所以,處理生存分析,首先要按照我們今天文章的梳理過(guò)程,一步一步弄懂每一個(gè)的指標(biāo)的意義,生存率的估計(jì)就水到渠成了。


——熱門(mén)課程推薦:

想從事業(yè)務(wù)型數(shù)據(jù)分析師,您可以點(diǎn)擊>>>“數(shù)據(jù)分析師”了解課程詳情;

想從事數(shù)據(jù)分析師,您可以點(diǎn)擊>>>“大數(shù)據(jù)就業(yè)”了解課程詳情;

想成為人工智能工程師,您可以點(diǎn)擊>>>“人工智能就業(yè)”了解課程詳情;

想了解Python數(shù)據(jù)分析,您可以點(diǎn)擊>>>“Python數(shù)據(jù)分析師”了解課程詳情;

想咨詢(xún)互聯(lián)網(wǎng)運(yùn)營(yíng),你可以點(diǎn)擊>>>互聯(lián)網(wǎng)運(yùn)營(yíng)就業(yè)班”了解課程詳情;

想了解更多優(yōu)質(zhì)課程,請(qǐng)點(diǎn)擊>>>

數(shù)據(jù)分析咨詢(xún)請(qǐng)掃描二維碼

若不方便掃碼,搜微信號(hào):CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢(xún)
客服在線
立即咨詢(xún)
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機(jī)數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進(jìn)行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個(gè)參數(shù)驗(yàn)證碼對(duì)象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個(gè)配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶(hù)后臺(tái)檢測(cè)極驗(yàn)服務(wù)器是否宕機(jī) new_captcha: data.new_captcha, // 用于宕機(jī)時(shí)表示是新驗(yàn)證碼的宕機(jī) product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說(shuō)明請(qǐng)參見(jiàn):http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計(jì)時(shí)完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請(qǐng)輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請(qǐng)輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }