文章概要:作者山腳下的螞蟻,詳細介紹了SAS程式設計製作臨床試驗資料分析圖表TFL前的準備工作,給Junior 統計分析程式設計師提供了詳細的思路和方法論。
開篇宣告:1. 以下內容非原創,轉自微信公眾號山腳下的螞蟻《3 程式設計製作TFL——從何下手?》,如有侵權,可聯絡刪除
2. 以下觀點,僅代表作者個人觀點,請帶著質疑的態度去閱讀。如有問題,歡迎評論區留言或直接聯絡作者
程式設計製作TFL——從何下手?
前言
在熟悉了《2 程式設計預熱——程式設計要求》後,面對一項製作圖表 (TFL,Table,Figure,Listing) 的任務,該從何下手呢?這應該是新入職的統計分析程式設計師比較苦惱的事。這裏我不講程式碼(code),我主要講一下思路和方法論。至於該如何下手寫 code,我會專門起一個話題來講。
正文
詳細步驟
開展程式設計工作前,按照SOP一般需要先完成方案、SAP、CRF的培訓,且大多形式為自學,所以新人程式設計師培訓後可能依然稀裏糊塗,似懂非懂(不用擔心,後邊遇到問題了,帶著問題再次來培訓,更有針對性)。面對一個圖表任務,該如何下手呢?
第一步,先來理解 Shell 的格式和含義。每個圖表都對應一個清晰 Shell (模板)(如果 Shell 畫得好)。看到 Shell 後,不要著急下手開始程式設計。先從格式和含義上進行理解,有任何的不理解,可以帶著問題繼續第二步和第三步。到最後如果依然有不理解,可以和Shell的作者(專案統計師)進行溝通。
第二步,再來培訓一下方案和 SAP。理解試驗設計,看 SAP 上的要求,包括分析指標/變數的定義、分析變數的衍生規則、小數點位數的規則等,再找到 TFL 對應部分的內容好好讀一遍。
第三步,培訓 CRF/aCRF 和 CCI/CCG(資料填寫指南), 確定資料收集規則和對應的變數;然後找到對應的 Spec,從原始資料到SDTM資料,再從SDTM資料到ADaM資料,順藤摸瓜,一步步來確定分析資料和變數。
具體案例
如下表,這是一個簡單的三線表(顧名思義,有三條線的表)。

Shell的格式
-
第一條線上麵屬於標題(title)部分,有效資訊僅有“表格2.1 人口學和基線特徵(安全性分析人群)”;其他是general的資訊(申辦方,方案號,頁碼等),一般程式設計Lead會設定好,無需過多關注。 -
第一條和第二條線之間屬於表頭(header),這裏為治療組的資訊;第二條和第三條線之間部分是表身(body), 為不同指標彙總了不同統計量; -
第三條線下面為註釋(footnote)部分,用來解釋說明上文變數或指標的取值規則。這裏的上文不僅包括body還可以包括title。

Shell的含義
再來看一下表的含義。首先就是人群(Population)——title中的“(安全性分析人群)”,其次是主題(Topic)——title中的“人口學和基線特徵”,最後是表身關注的指標/變數以及統計量。
故上表關注的內容(含義)為,安全性分析人群的人口學和基線特徵相關的變數,連續型指標(年齡、身高、基線體重、基線BMI)的統計量,以及分型別指標(性別、民族)的分類計數。
培訓SAP
理解了Shell的格式和含義後,接下來該如何下手呢,變數在哪個資料集裡?變數名是什麼?小數點規則為什麼年齡和身高體重等指標不一樣?帶著這些問題再來看SAP裡的描述(比如相關指標的衍生規則、缺失資料填補規則、小數點規則等)。比如,關於小數點在SAP有如下描述:

比如對於身高(cm)的統計量Mean,Median的小數位數應該要保留幾位呢?原始資料的小數位數是多少呢?對於衍生資料體重指數(BMI)又該如何保留小數位數呢?請移步到下一步裡看結果。
培訓CRF以及找資料和變數
第三步,檢視aCRF上的對應變數(對於該資料/變數的收集規則,如有不解,可以參看CCI/CCG對應部分的描述),然後找到對應的SDTM Spec,追溯從原始資料到SDTM資料;再檢視ADaM Spec,從SDTM資料到ADaM資料,順藤摸瓜,一步步來確定分析資料和變數。需注意的是,資料管理(DM)和統計都有一個aCRF:DM的aCRF標識的是原始資料的資料集名稱以及變數名等資訊;統計的aCRF是原始資料標準化後的SDTM資料對應的資料集名稱以及變數名(如下圖)。
從上圖我們可以看到,身高、體重變數被收集在SDTM VS資料集裡,身高同體重一樣,原始資料都是1位小數;根據案例SAP的描述,BMI的原始資料按照2位小數來做。
這樣的話,身高和體重的統計量Mean和Median按照兩位小數,SD按照三位小數,Min和Max按照一位小數來展示;BMI的統計量Mean和Median按照三位小數,SD按照四位小數,Min和Max按照兩位小數來展示。需要注意的是,此時BMI的小數位數同Shell的位數規則不一致,從而需要和專案統計師進行溝通解決方法。總之,謹記:遇到任何的問題都可以保持和統計師的溝通。但前提一定是調研過,思考後,再來溝通。
另外,需要注意的是Shell中的指標為基線體重以及基線BMI,那麼基線是什麼含義呢?需要再到SAP中尋求答案,然後再回到ADaM Spec中找相應的資料集以及變數名。此處不再贅述。
結語
雖然無論黑貓白貓,只要抓住老鼠都是好貓。有經驗的臨床統計分析程式設計師均知悉上述人口學和基線特徵資料通常會包括在ADaM ADSL中(ADSL為受試者水平的資料集,一個受試者一條記錄),可能會說,直接到ADSL裡找相應的資料/變數即可,不需要按照步驟一二三那麼麻煩。這裏我想說,我這裏講的是方法論哈,當你不知道或不確定收集在哪個資料的哪個變數的時候,按照上述的步驟,會更加有效和更有收穫。
按照上述的步驟做下來,你對試驗設計、資料從CRF設計、收集規則、分析方法和結果都會加深理解。個人理解,做專案不在於多,而在於精。希望大家做每個專案都有收穫。
如有紕漏,歡迎私信批評指正~
如有不解,也歡迎私信交流~
完結
0則評論