R數據分析:非劣效性研究設計的統計處理方法,原理和實例

2024年2月6日 20点热度 0人点赞

在我們經常接觸的統計模式中,我們是在尋求推翻原假設,證明差異,這種統計模型在傳統的臨床試驗中,在各種統計推斷中已經成為默認了。在傳統的臨床試驗中通常會將一種新的治療方法與標準治療或安慰劑進行比較,從而證明這種新治療具有更好的療效,這類試驗的原假設是這兩種治療方案的治療效果沒有差異。如果統計分析拒絕這一假設,說明這兩種治療的療效是有差別的,即出現統計學上差異性展示出顯著的P值,這個時候就證明了我們的研究目的。

Traditional statistical methods were designed to demonstrate differences and cannot easily show that a new treatment is similar to an older one.

但是,當我們開發新藥或者新的治療方法的時候,這個時候我們的目的可能並不是找到一種更有效的方法,而是找到一種與標準治療療效相似的新療法,同時具有其他一些優勢,如成本更低、副作用更少,或更加便捷。因其具備的這些優勢,這種幾乎與標準治療一樣有效的新治療方法,在實踐中對某些特定的患者來說可能是首選。換成統計語言就是我們這個時候的統計目的並不是要證明差異性,而是要證明相似性。我們要回答的問題是“這個新藥或者新方法是不是不劣於現有的治療方法”而非“新方法是否有效”。傳統的統計推斷證明差異存在的思路就行不通了。

上面這種情況所對應的試驗設計就是非劣效性試驗(等效性實驗也是如此理解)。目的是嚴格評估一種新的治療方案,通過與公認有效的治療方案進行對比,來證明該治療方案幾乎與標準治療方案的療效一致性(即不存在劣勢)。

In another context, the new treatment may offer lower cost and/or better patient compliance but might have a lower efficacy than the standard treatment. A non-inferiority study is designed to show that the new treatment is not less effective than the standard treatment to within a pre-specified margin of clinical indifference

傳統統計為什麼不行

為了大傢更好地理解,在寫非劣實驗正確的統計方法之前,我們先幫助大傢理解“為什麼傳統統計推斷不能回答“非劣效”的問題”。

同學們經常有一個比較容易陷進去的邏輯是:既然統計顯著可以說明兩組間有差異,那麼反過來一想統計不顯著不就是兩組差異不顯著嗎,這不是就是說兩組效果相近----就證明了“非劣效”嗎?這個邏輯似乎說的通,但是是不對的。統計不顯著並不意味著沒差異,並不意味著兩個方法效果一樣。

比如,看下圖:

上圖描述的是三種治療方案ABC的效應值分佈,在上圖中B和C的效應相對於0效應線都是不顯著的,但是其分佈不同(點估計和置信區間不同),我們就不能簡單說B和C都不劣於原方法。如果這樣說了,和方案A比較就矛盾了(A是一定優於原方案,而且也優於B,但是不優於C,那麼B個C能一樣嗎?);從另外的角度也可以理解這個問題:統計上不顯著是沒有達到小概率的標準,比如新藥事實上在94%的情況下都比原藥劣,但是其沒達到我們設定的小概率標準,這個時候在統計上兩藥是沒差異的,但是以此來說明新藥的非劣效性肯定是錯的離譜了嘛(本身新藥在94%的情況下都比原藥效果劣怎麼能說是非劣呢)。所以直接以統計差異來證明“非劣效”是很荒唐的。

以上希望能幫助大傢理解為什麼統計不顯著不能證明相似性。要記住:'No statistically significant difference’ can-not be used to support a conclusion of ‘no difference’ or of ‘equivalence'.

非劣效界值

上面講過非劣效並不是一個簡單的統計推斷得到個顯著性就行的,要說明新藥不比老藥差我們需要提前設定“不比老藥差的標準”,然後將差異的置信區間和這個標準進行比較從而得出結論。這個標準就叫做“非劣效界值”,關於這個界值的理解,下面文獻給出了很好的示例說明:

非劣效性界值的選擇往往是主觀的,而不是基於特定的標準,自己去文獻薈萃或者自己能自圓其說就行。但一點是明確的的這個界值一定比目前方法能達到的效應值小很多。

https://support.sas.com/resources/papers/proceedings20/4641-2020.pdf

統計原理

通常在進行非劣效性試驗結果分析的時候,我們會為兩種藥效果之間的差異構建一個單側95%或97.5%的置信區間(從L到∞;負值代表了試驗治療的劣效性),並將下限“-L”與非劣效性界值進行比較。如果置信區間的下限值高於或位於非劣效性界值的右側,則證明了其非劣效性。

設定好非劣效界值之後我們判斷結果時遇到的可能性有三個,像下圖中一樣,藍色的情況就是新藥與老藥效應差的效應置信區間全部在非劣效界值區域,效應的置信區間低點都在非劣效界值內,就意味著A是非劣效的;同理綠色的就是可能非劣效也可能不是;紅色則是劣效。

實際例子

下圖中是一個簡明的非劣效性試驗結果分析的實際例子:

上面的例子的效應是連續的,整個統計分析過程已經寫的非常清楚了,我們再來看一個分類變量的做法,依然是做差比置信區間的思想:

在上面的例子中,依然是將效應差值的置信區間求出來,將區間和非劣效界值進行對比。

但是很多的時候對於分類結局很多的時候我們的效應表示是OR或者RR,這個時候就不是做差了,而是直接將OR或RR和界值進行比較,如下:

那麼這個時候我們需要計算OR或RR的置信區間,示例如下:

可以看到這個時候我們是估計的RR的置信區間,然後和界值比較得到的非劣效結論。

實際上有學者提出來,做差好一點,建議大傢還是去做差。

testing NI using RD not only controls well the Type I error and achieves the highest statistical power but also requires the smallest sample size compared to RR and OR

We performed a search for non-inferiority trials with binary outcomes reported in the New England Journal of Medicine between 2016 and 2019. Of the 24 randomized controlled trial (RCTs) found, 16 used an RD to specify the non-inferiority margin. Two used RR and six used OR.

實操

在弄明白原理並且看到了實際例子之後我們再來看操作。RD的置信區間計算,我們來看一個分類結局的置信區間的計算實例

下面的統計結果表達來自The Lancet。結果變量是分類變量,使用的率差來進行非劣效性的判斷,方法就是得到兩組率差的置信區間,將置信區間下限和非劣效界值進行對比從而得到結論。

我們來實操一波,在R語言的dani包中test.NI函數是專門用來進行非劣實驗的數據法分析的。

還有我們也可以使用catfun包中的riskdiff函數

我們按照相應的參數說明,寫出分類變量的四格表,運用兩函數後兩函數結果一模一樣,結果如下:

推薦閱讀:

Walker J. Non-inferiority statistics and equivalence studies. BJA Educ. 2019 Aug;19(8):267-271. doi: 10.1016/j.bjae.2019.03.004. Epub 2019 Apr 24. PMID: 33456901; PMCID: PMC7808096.

Tunes da Silva G, Logan BR, Klein JP. Methods for equivalence and noninferiority testing. Biol Blood Marrow Transplant. 2009 Jan;15(1 Suppl):120-7. doi: 10.1016/j.bbmt.2008.10.004. PMID: 19147090; PMCID: PMC2701110.

Testing Hypotheses for Equivalence and Non-inferiority with Binary and Survival

Outcomes. Joseph C. Gardiner, Department of Epidemiology and Biostatistics,

Michigan State University, East Lansing, MI 48824

小結

今天給大傢寫了非劣實驗研究的統計分析原理、示例和實操,希望大傢可以將相應內容遷移到等效應性研究中去,進一步理解其與傳統統計推斷的區別。感謝大傢耐心看完,自己的文章都寫的很細,重要代碼都在原文中,希望大傢都可以自己做一做,請轉發本文到朋友圈後私信回復“數據鏈接”獲取所有數據和本人收集的學習資料。如果對您有用請先記得收藏,再點贊分享。

也歡迎大傢的意見和建議,大傢想了解什麼統計方法都可以在文章下留言,說不定我看見了就會給你寫教程哦,有疑問歡迎私信,有合作意向請直接滴滴我。

如果你是一個大學本科生或研究生,如果你正在因為你的統計作業、數據分析、模型構建,科研統計設計等發愁,如果你在使用SPSS, R,Mplus中遇到任何問題,都可以聯系我。因為我可以給您提供最好的,最詳細和耐心的數據分析服務。

如果你對Z檢驗,t檢驗,方差分析,多元方差分析,回歸,卡方檢驗,相關,多水平模型,結構方程模型,中介調節,量表信效度等等統計技巧有任何問題,請私信我,獲取詳細和耐心的指導。

如果你或你的團隊需要專業的科研數據清洗,建模服務,教學培訓需求等等。請聯系我。

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...

If You or Your Research Team Need Professional Scientific Data Cleaning, Model Building Services or Statistical Consulting... Please Contact Me.

往期精彩

R數據分析:集成學習方法之隨機生存森林的原理和做法,實例解析

R數據分析:凈重新分類(NRI)和綜合判別改善(IDI)指數的理解

R數據分析:反事實框架和因果中介的理論理解

R數據分析:解決科研中的“可重復危機”,理解Rmarkdown

R數據分析:多項式回歸與響應面分析的理解與實操

R數據分析:生存數據的預測模型建立方法與評價(二)

R數據分析:生存數據的預測模型建立方法與評價

R數據分析:生存分析的列線圖的理解與繪制詳細教程

R數據分析:結合APA格式作圖大法講講ggplot2和ggsci,請收藏

R數據分析:變量間的非線性關系,多項式,樣條回歸和可加模型

Mplus數據分析:性別差異gendergap的相關研究如何做?

R機器學習:分類算法之logistics回歸分類器的原理和實現

R數據分析:PLS結構方程模型介紹,論文報告方法和實際操作

R數據分析:跟隨top期刊手把手教你做一個臨床預測模型

R數據分析:如何用層次聚類分析做“癥狀群”,實例操練

R數據分析:工具變量回歸與孟德爾隨機化,實例解析

R數據分析:潛類別軌跡模型LCTM的做法,實例解析

R文本挖掘:中文詞雲生成,以2021新年賀詞為例

R機器學習:分類算法之判別分析LDA,QDA的原理與實現

R機器學習:重復抽樣在機器學習模型建立過程中的地位理解

R數據分析:用lme4包擬合線性和非線性混合效應模型

R數據分析:孟德爾隨機化中介的原理和實操

R數據分析:生存分析的列線圖的理解與繪制詳細教程

R數據分析:cox模型如何做預測,高分文章復現

R數據分析:廣義估計方程式GEE的做法和解釋

R數據分析:潛類別軌跡模型LCTM的做法,實例解析

R數據分析:潛變量與降維方法(主成分分析與因子分析)

R數據分析:如何給結構方程畫路徑圖,tidySEM包詳解

R數據分析:生存分析與有競爭事件的生存分析的做法和解釋

R機器學習:樸素貝葉斯與支持向量機的原理與實現

R數據分析:混合效應模型的可視化解釋,再不懂就真沒辦法

R數據分析:tableone包的詳細使用介紹

R數據分析:如何用lavaan包做結構方程模型,實例解析

R機器學習:分類算法之K最鄰進算法(KNN)的原理與實現

R數據分析:潛增長模型LGM的做法和解釋,及其與混合模型對比

R數據分析:論文中的軌跡的做法,潛增長模型和增長混合模型

R數據分析:縱向分類結局的分析-馬爾可夫多態模型的理解與實操

R數據分析:臨床預測模型實操,校準曲線和DCA曲線做法示例

R數據分析:國產新冠口服藥比輝瑞好的文章的統計做法分享

R數據分析:再寫潛在類別分析LCA的做法與解釋

R數據分析:潛在轉化分析LTA的做法和解釋(一)

R機器學習:分類算法之K最鄰進算法(KNN)的原理與實現