心肺復蘇模型

新聞分類

R信息解析:追隨top期刊手把手教你做1個臨床預判模型

R信息解析:追隨top期刊手把手教你做1個臨床預判模型

發(fā)布日期:2022-11-15 作者:康為 點擊:

臨床預判模型也是大家較為感興致的,今日就帶著大家看一篇臨床預判模型的文章,以及用1個例子給大家過一遍作法。

這篇文章來自護理行業(yè)高級期刊的文章,文章名在以下

Ballesta-Castillejos A, Gómez-Salgado J, Rodríguez-Almagro J, Hernández-Martínez A. Development and validation of a predictive model of exclusive breastfeeding at hospital discharge: Retrospective cohort study. Int J Nurs Stud. 2021 May;117:103898. doi: 10.1016/j.ijnurstu.2021.103898. Epub 2021 Feb 7. PMID: 33636452.

文章作家做了個入院時純潔母乳豢養(yǎng)的預判模型,信息來自2個隊列,1個隊列做模型,此外1個拿來驗證。樣件量的計算用的是“10個樣件1個變量”的規(guī)范,預判結(jié)局變量是個二分類,變量篩選的方式仍然是單原因有意思的都歸入預判模型中,詳細的建模方式是logistic回歸模型。接著用AUC進行模型的評價。

在結(jié)果報表上,作家報表了一切的有意思的預判原因,每個原因會展現(xiàn)OR和OR的置信區(qū)間,還有總體模型的評估指標,含蓋展現(xiàn)了模型的ROC曲線,和AUC,作家還展現(xiàn)了不同幾率階截斷值下的模型的Sensitivity, Specificity, PPV, NPV, LR+, LR-。如圖:


1.jpg


作家全部文章是用SPSS做出去的,今日給大家寫寫論文中的各類指標全是什么意思并且怎樣用R話語做出去論文中須要報表的各類指標。理論鋪墊

首先給大家寫靈敏度(Sensitivity)與特異度(Specificity),這2個物品全是對于二分類結(jié)局來講的,大家先瞅瞅以下的圖:


2.jpg


咱們真正的結(jié)果有兩類也許,模型的預判也有兩類也許,上圖的AD表示模型預判對的個案數(shù)目,如此靈敏度就是:在真的有病了,你的模型有多大也許檢查出去,表示為

Sensitivity: A/(A+C) × 100

在論文中就是這個母親真的是純潔母乳豢養(yǎng)的,模型有多大也許辨認為真的純潔母乳豢養(yǎng)。

特異度就是:我是真的真的沒病,你的模型有多大也許說我真的沒病,表示為:

Specificity: D/(D+B) × 100

在論文中就是這個母親真的不會去純潔母乳豢養(yǎng)的,模型有多大也許辨認為真的不僅純母乳豢養(yǎng)。

有類學友說,我知曉個模型預判確切率不就好了嗎,用(A+D)/(A+B+C+D)來評價模型不就好了嗎?搞如此麻煩。。

不可如此想的,例如你如今有1個傻瓜模型,這個模型傻到它只會將一切的人都預判為沒病,恰好這個模型被用在了1個常態(tài)人群中,接著咱們發(fā)掘這個傻瓜模型的準確率也是100%,這個就很離譜,因此并模型預判確切性是不可廣泛評價模型體現(xiàn)的,須要借助Sensitivity, Specificity。

咱們再看 PPV, NPV這2個指標:

Positive Predictive Value: A/(A+B) × 100

Negative Predictive Value: D/(D+C) × 100

看上面的公式,相信大家都看得出這2個實則就是模型的陰性預判確切性和陽性預判確切性,也能夠從特定角度闡明模型的體現(xiàn)。

再看LR+和 LR-,這2個就是陰性似然比 (positive likelihood ratio, LR+)和 陽性似然比

(positive likelihood ratio, LR+),似然比的概念請考慮下一段英文描繪:

Likelihood ratio (LR) is the ratio of two probabilities: (i) probability that a given test result may be expected in a diseased individual and (ii) probability that the same result will occur in a healthy subject.

如此:(LR+) = sensitivity / (1 - specificity),意義就是真陰性率與假陰性率之比。闡明模型準確判定陰性的也許性是錯誤判定陰性也許性的倍數(shù)。比值越大,實驗結(jié)果陰性時為真陰性的幾率越大。

(LR-) = (1 - sensitivity) / specificity,意義就是假陽性率與真陽性率之比。表示錯誤判定陽性的也許性是準確判定陽性也許性的倍數(shù)。其比值越少,實驗結(jié)果陽性時為真陽性的也許性越大。

因此大家記住:陰性似然比越大越好,陽性似然比越少越好。

最終再把上面的一切的內(nèi)容總結(jié)1個表獻給可惡的粉絲們,嘿嘿。以下就是1個分類結(jié)局預判變量須要報表的許多模型評價指標:


3.jpg


再回過頭想想咱們所謂的陰性或者陽性,假設用logistics回歸做的話自身這個陰性陽性的鑒別全是能夠設定的,由于咱們的模型擬合出去的是呼應幾率,就是Logit公式里面的那個p值,你能夠以p=0.5為咱們鑒別陰陰性的cutoff,固然你還能夠以0.9或者0.1為cutoff,cutoff不同自然咱們模型靈敏度和特異度就不同了,就是說靈敏度和特異度是緊隨cutoff不同而改變著的,因此要安穩(wěn)地評價模型體現(xiàn)還須要此外的指標,這個時候咱們就引出了1個很首要的概念:ROC曲線和曲線以下積AUC。在實戰(zhàn)中解讀ROC曲線

我如今手上有信息如下:


4.jpg


我要做1個default的預判模型,default是個二分類變量,取值為“No” 和“Yes”,為了簡潔我預判原因只參考1個balance。因而我創(chuàng)建1個logistics模型:

model_glm = glm(default ~ balance, data = default_trn, family = "binomial")

咱們將預判為Yes的幾率為0.1的時候成為cutoff值,區(qū)分預判結(jié)局(p<0.1的時候為No,p>0.1的時候為Yes),一樣地咱們還能夠?qū)utoff設置為0.5,0.9。接著咱們分別看一看模型的靈敏度和特異度:

test_pred_10 = get_logistic_pred(model_glm, data = default_tst, res = "default", 

                                                                 pos = "Yes", neg = "No", cut = 0.1)

test_pred_50 = get_logistic_pred(model_glm, data = default_tst, res = "default", 

                                                                 pos = "Yes", neg = "No", cut = 0.5)

test_pred_90 = get_logistic_pred(model_glm, data = default_tst, res = "default", 

                                                                 pos = "Yes", neg = "No", cut = 0.9)

test_tab_10 = table(predicted = test_pred_10, actual = default_tst$default)

test_tab_50 = table(predicted = test_pred_50, actual = default_tst$default)

test_tab_90 = table(predicted = test_pred_90, actual = default_tst$default)


test_con_mat_10 = confusionMatrix(test_tab_10, positive = "Yes")

test_con_mat_50 = confusionMatrix(test_tab_50, positive = "Yes")

test_con_mat_90 = confusionMatrix(test_tab_90, positive = "Yes")

metrics = rbind(

   

   c(test_con_mat_10$overall["Accuracy"], 

       test_con_mat_10$byClass["Sensitivity"], 

       test_con_mat_10$byClass["Specificity"]),

   

   c(test_con_mat_50$overall["Accuracy"], 

       test_con_mat_50$byClass["Sensitivity"], 

       test_con_mat_50$byClass["Specificity"]),

   

   c(test_con_mat_90$overall["Accuracy"], 

       test_con_mat_90$byClass["Sensitivity"], 

       test_con_mat_90$byClass["Specificity"])

)


rownames(metrics) = c("c = 0.10", "c = 0.50", "c = 0.90")

metrics

運作代碼后獲得呼應幾率不同cutoff值的狀況下模型的靈敏度和特異度,如下圖:


5.jpg


能夠看見咱們設定的呼應幾率的cutoff值不同,就是判定陰陽的規(guī)范不同,咱們獲得的模型的靈敏度和特異度就是不同的。

以上不過為了再次給大家直觀地闡明咱們的模型的靈敏度和特異度是取決于咱們的呼應幾率界值的,你判定陰陽的規(guī)范會直接牽連模型的靈敏度和特異度,因而,咱們換個思想,針對1個模型,咱們將靈敏度成為橫坐標,特異度成為縱坐標,接著cutoff輕易取,咱們生成一條曲線,這就參考了一切的cutoff狀況了,就能夠安穩(wěn)地評價模型的體現(xiàn)了,這條曲線就是ROC曲線。

如此咱們希望的是1個模型它的靈敏度高的時候,特異度也能高,表現(xiàn)到曲線上就是曲線下的面積可以越大越好。預判模型R話語實操

此部份給大家寫怎樣做出論文中的各類指標,并且怎樣繪出ROC曲線。

仍然是用上一部份的信息,仍然是做balance預判default的模型:

model_glm = glm(default ~ balance, data = default_trn, family = "binomial")

模型流出結(jié)果如下:


6.jpg


結(jié)果中有流出模型的截距和balance的β值,咱們能夠用如下代碼獲得balance的OR值并且置信區(qū)間:

exp(cbind(OR = coef(model_glm), confint(model_glm)))

運作上面的代碼就能夠獲得balance的OR值和OR的置信區(qū)間:


7.jpg


同時咱們有遠古的真正值,咱們模型擬合好了以后能夠用該模型進行預判,獲得預判值,生成攪渾矩陣:

model_glm_pred = ifelse(predict(model_glm, type = "response") > 0.5, "Yes", "No")

在矩陣中就能夠獲得哪類是遠古信息真正的No和Yes,哪類是模型預判出去的No和Yes:


8.jpg


上面就是咱們自身信息做出去的攪渾矩陣,接著大家就能夠直接帶公式計算出須要報表的模型的Sensitivity, Specificity, PPV, NPV, LR+, LR-了。

同時大家能夠用pROC包中的roc函數(shù)一行代碼繪制出ROC曲線并獲得曲線以下積,例如我做的模型,寫出代碼如下:

test_roc = roc(default_tst$default ~ test_prob, plot = TRUE, print.auc = TRUE)

就能夠獲得ROC曲線和曲線以下積了:


9.jpg


上面的一切操控全是能夠在SPSS中完結(jié)的,論文作家也是用SPSS做的。大家感興致去閱讀原論文哈。小結(jié)

今日結(jié)合刊登文章給大家寫了分類結(jié)局的預判模型須要報表哪類指標,指標的意思并且怎樣用R做1個分類結(jié)局的預判模型,感激大家耐煩看完,自身的文章都寫的很細,首要代碼都在原文中,期望大家都能夠自身做一做,請轉(zhuǎn)發(fā)本文到同伙圈后私信答復“信息鏈接”獲得一切信息和自己采集的學習資料。假設對您有用請先記得珍藏,再點贊分享。

也歡迎大家的看法和倡議,大家想了解什么統(tǒng)計方式都能夠在文章下留言,說不定我看到了就會給你寫教學哦,有疑問歡迎私信。

假設你是1個大學本科生或研發(fā)生,假設你正在由于你的統(tǒng)計功課、信息解析、模型建立,科研統(tǒng)計設計等憂愁,假設你在應用SPSS, R,Python,Mplus, Excel中碰到任意問題,都能夠聯(lián)絡我。由于我能夠給您供應最佳的,最全面和耐煩的信息解析服務。

假設你對Z檢查,t檢查,方差解析,多元方差解析,回歸,卡方檢查,有關(guān),多程度模型,構(gòu)造方程模型,中介調(diào)整,量表信效度等等統(tǒng)計方法有任意問題,請私信我,獲得全面和耐煩的引導。

If you are a student and you are worried about you statistical #Assignments, #Data #Analysis, #Thesis, #Reports, #Composing, #Quizzes, Exams.. And if you are facing problem in #SPSS, #R-Programming, #Excel, Mplus, then contact me. Because I could provide you the best services for your Data Analysis.

Are you confused with statistical Techniques like z-test, t-test, ANOVA, MANOVA, Regression, Logistic Regression, Chi-Square, Correlation, Association, SEM, multilevel model, mediation and moderation etc. for your Data Analysis...??

Then Contact Me. I will solve your Problem...

加油吧,打工人!往期精彩

R信息解析:用R話語做meta解析

 R信息解析:用R話語做潛類型解析LCA

 R信息解析:什么是人群歸因分數(shù)Population Attributable Fraction

 R信息解析:手把手教你畫列線圖(Nomogram)及理解結(jié)果

 R信息解析:偏向性評分匹配完好實例(R實行)

 R文本發(fā)掘:感情解析

 R信息解析:怎樣用R做驗證性因子解析及繪圖,實例操練

 R信息解析:有調(diào)整的中介

 R信息解析:怎樣用R做多重插補,實例操練

 R信息解析:多分類邏輯回歸

 R文本發(fā)掘:中文詞云形成,以2021新年賀辭為例

 R信息解析:臨床預判模型的樣件量討論及R實行

 R信息解析:混合效應模型實例

 R信息解析:隨機截距交叉滯后RI-CLPM與傳統(tǒng)交叉滯后CLPM

 R信息解析:多程度模型全面闡明

 R信息解析:怎樣做潛在剖面解析Mplus

 R信息解析:主成份解析及可視化

 R信息解析:生存解析的作法與闡明續(xù)

 R信息解析:競爭危害模型的作法妥協(xié)釋二

 R信息解析:怎樣做邏輯斯蒂回歸

 R信息解析:開拓性因子解析

 R信息解析:交叉滯后模型非專業(yè)闡明

 R信息解析:線性回歸的作法和優(yōu)化實例

 R信息解析:多元邏輯斯蒂回歸的作法

 R信息解析:非專業(yè)講解潛變量增長模型

 R信息解析:競爭危害模型的作法妥協(xié)釋

 R信息解析:中介功效與調(diào)整功效的解析與闡明

 R信息解析:混合效應模型的可視解除釋,再不懂就真沒方法

 R信息解析:潛增長模型LGM的作法妥協(xié)釋,及其與混合模型對照

 信息可視化——R話語分組較為時圖形增加P值和明顯性程度

 R信息解析:構(gòu)造方程模型繪圖并且模型較為,實例操練 



本文網(wǎng)址:http://www.sem136.com/news/1887.html

相關(guān)標簽:預判模型,總體模型,模型預判,傻瓜模型,這個模型,評價模型,模型評價,模型靈敏度,logistics模型,1個模型,1個模型它,模型流出,流出模型,程度模型,方程模型,效應模型實例,危害模型,滯后模型,增長模型,效應模型,模型LGM,混合模型

最近瀏覽:

相關(guān)產(chǎn)品:

相關(guān)新聞:

在線客服
分享