天天看點

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

在本文中,潛類别軌迹模組化 (LCTM) 是流行病學中一種相對較新的方法,用于描述生命過程中的暴露,它将異質人群簡化為同質模式或類别。然而,對于給定的​​資料集​​,可以根據類的數量、模型結構和軌迹屬性得出不同模型的分數。

相關視訊

拓端

拓端

本文說明了LCTM的基本用法,用于彙總拟合的潛在類軌迹模型對象的輸出。

例子

_目的_:通過将 BMI 模組化為年齡函數,識别具有不同軌迹的參與者亞組。根據迄今為止可用的文獻,我們假設初始 K=5 類 BMI 軌迹。

我們使用體重指數 (BMI) 重複測量 10,000 個樣本的長格式資料框(檢視文末了解資料擷取方式)。

提供了一個示例(模拟)資料集 bmi 來描述整個步驟。

包含的變量有:

id - 個人 ID

年齡 - BMI 測量的年齡,以年為機關

bmi - 個人在 T1、T2、T3 和 T4 時間的體重指數,以 kg/m^2 為機關 true_class - 用于識别模拟個人 BMI 資料的類别的标簽

加載資料

繪制資料

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

潛在類軌迹模組化的八步示例

為了對縱向結果 yijk 進行模組化,對于 k=1:K,類,對于個體 i,在時間點 j,tj可以使用許多模組化選擇。我們在這裡給出方程來說明這些,并按照複雜度增加的順序将它們命名為模型 A 到 G。

模型 A:無随機效應模型 | 固定效應同方差 | - 解釋個人軌迹與其平均類軌迹的任何偏差僅是由于随機誤差

其中假設所有類的殘差方差相等,

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

相關視訊

拓端

模型 B:具有特定類别殘差的固定效應模型 | 異方差 | 與模型 A 相同的解釋,随機誤差在不同的類别中可能更大或更小。

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

其中假設殘差方差不同

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

模型 C:随機截距 解釋是允許個體的初始體重不同,但假設每個班級成員遵循平均軌迹的相同形狀和大小

對于 k=1:K, classes, 對于個體 i, 在時間點 j, tj,

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

其中随機效應分布

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

模型 D:随機斜率 允許個體在初始權重和平均軌迹的斜率上有所不同

對于 k=1:K,類,對于個體 i,在時間點 j , tj,

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

其中假設随機效應分布為

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

模型 E:随機二次 - 跨類的共同方差結構 允許個體在類内通過初始權重變化,但是假設每個類具有相同的變異量。對于 k=1:K, 類, 對于個體 i, 在時間點 j, tj,

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

其中假設随機效應分布為 

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

模型 F 和 G:随機二次 - 允許方差結構跨類變化的比例限制 ,增加模型 E 的靈活性,因為允許方差結構相差一個乘法因子,以允許某些類具有更大或更小的類内方差。該模型可以被認為是模型 G 的更簡潔版本(将要估計的方差-協方差參數的數量從 6xK 參數減少到 6+(K-1)個參數。

對于 k=1:K, classes, 對于個體 i, 在時間點 j, tj,

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

其中假設随機效應分布為 

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第一步:選擇随機效應結構的形式

為了确定随機效應的初始工作模型結構,可以遵循 Verbeke 和 Molenbergh 的基本原理來檢查沒有随機效應的模型中每個 K 類的标準化殘差圖的形狀。

如果殘差輪廓可以近似為平坦、直線或曲線,則分别考慮随機截距、斜率或二次項。

為了拟合沒有随機效應的潛在類模型。

hlmfixed(bmig)      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

然後,我們将拟合模型輸入 LCTM中的 step1 函數,以檢查特定類别的殘差。

第2步

優化步驟 1 中的初步工作模型以确定最佳類數,測試 K=1,...7。可以根據最低貝葉斯資訊标準 (BIC) 來選擇所選類别的數量。

set.seed(100)


for (i in 2:4) {
  mi <- lchlme( data.frame(bmg\[1:500,\])
  
}
#> Be patient, hlme is running ... 
#> The program took 0.29 seconds 
#> Be patient, hlme is running ... 
#> The program took 0.69 seconds 
#> Be patient, hlme is running ... 
#> The program took 2.3 seconds

modelut <-kable(lin)      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第 3 步

使用步驟 2 中推導出的偏好 K 進一步細化模型,測試最優模型結構。我們測試了七個模型,從簡單的固定效應模型(模型 A)到允許殘差在類别之間變化的基本方法(模型 B)到一組具有不同方差結構的五個随機效應模型(模型 CG)。

  • A(SAS、PROC TRAJ)
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • B型(R,mmlcr)

調用 source() 指令。

mmldata = bmi_l01
#             )      
# model_b$BIC      
  • C (SAS、PROC TRAJ)
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • D 型(SAS、PROC TRAJ)
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • E型 (R, lcmm)
moe <- hlmfixed = bmi ~1+ age + I(age^2),
           mixture = ~1 + age + I(age^2)
          
#> Be patient, hlme is running ... 
#> The program took 0.77 seconds      
me$BIC      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • F型 (R, lcmm)
fixed = bmi ~1+ age + I(age^2),
           mixture = ~1 + age + I(age^2)      
mod$BIC      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • G (SAS、PROC TRAJ)
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第四步

執行一些模型充分性評估。首先,對于每個參與者,計算被配置設定到每個軌迹類的後驗機率,并将個體配置設定到機率最高的類。在所有類别中,這些最大後驗配置設定機率 (APPA) 的平均值高于 70% 被認為是可以接受的。使用正确分類、不比對的幾率進一步評估模型的充分性。

LCTMdel_f      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第 5 步

  • 圖形表示方法;
  • 繪制包含每個類的時間平均軌迹
  • 每個類具有 95% 預測區間的平均軌迹圖,顯示每個類内預測的随機變化
plotpred <- predictY
plototp      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
  • 個人水準的“面條圖”随時間變化,取決于樣本量,可能使用參與者的随機樣本
ggplot(bm, aes(x = age, y = bmi)) + geom_line      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料
ggplot(bmong) + geom_line      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

01

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

02

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

03

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

04

資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第 6 步

評估模型。

第 7 步

使用四種方法評估臨床特征和合理性;

1. 評估軌迹模式的臨床意義,旨在包括至少 1% 的人群的類别

postprb( modf )      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

2. 評估軌迹類别的臨床合理性

使用生成的圖 來評估預測的趨勢對于正在研究的組是否現實。例如,對于研究 BMI,顯示下降到 <5 kg/m2 的預測趨勢是不現實的。 

3. 潛在類别與傳統分類的特征清單

使用從所選模型中提取類配置設定;

然後用描述性變量回報到主資料集中。

然後可以根據需要将這些制成表格。

等等。

4. 使用 kappa 統計的類成員與傳統 BMI 類别成員的一緻性

# 定義BMI類别,這些類别的數量需要與類别的數量相等 
confusionMatrix(bmi_class, bmclass
kable(y, row.names = )      
資料分享|R語言、SAS潛類别(分類)軌迹模型LCTM分析體重指數 (BMI)資料可視化|附代碼資料

第 8 步

酌情進行敏感性分析。

資料擷取

在下面公衆号背景回複“BMI資料”,可擷取完整資料。