如何使用SAS PHREG过程实现HR的趋势检验
Cox(PHREG)模型中蛋白X四分位分组的HR趋势检验方案
你当前跑的以死亡为结局、Q1为参照的蛋白X四分位PHREG模型,即使各四分位和参照组的两两比较p值都没到显著性阈值,也有成熟方法检验HR随四分位升高的变化趋势,具体方法和操作细节如下:
核心检验方法
有序变量赋值法(最常用、操作最简)
该方法统计效力高于哑变量两两比较,适配你当前的分析场景:- 生成一个新的有序变量,给4个四分位组依次赋值
Q1=1、Q2=2、Q3=3、Q4=4 - 将这个有序变量作为连续预测因子,代入和原哑变量模型协变量完全一致的PHREG模型中
- 该变量对应的回归系数p值即为线性趋势检验的p值,对应的HR为每升高1个四分位组的平均死亡风险比
注意:该方法默认风险随四分位序呈线性梯度变化,你当前Q2到Q4的p值从0.8、0.4到0.2逐步降低,对应HR大概率呈单向梯度变化,适配性很好。之所以单独两两比较不显著但趋势可能显著,是因为哑变量两两比较会消耗3个自由度,而有序变量法利用了分组的秩次信息,仅用1个自由度完成检验,检验效率更高,是流行病学分组变量趋势检验的通用做法。
- 生成一个新的有序变量,给4个四分位组依次赋值
哑变量系数约束检验法(无需重新生成变量)
如果不想改变原有哑变量模型结构,可以直接通过PHREG的对比检验语句,检验3个哑变量的回归系数是否符合线性变化约束:- 原模型中Q2、Q3、Q4对应的回归系数为b2、b3、b4(HR=exp(b)),线性趋势的原假设为b2、b3、b4与分组序次呈线性比例关系
- SAS PHREG中可直接通过
CONTRAST语句实现,以分类变量quartile4个水平、Q1为参照为例,线性趋势检验的语句为:PROC PHREG DATA=your_dataset; CLASS quartile (REF='1')/PARAM=GLM; MODEL survival_time*death_status(0)=quartile cov1 cov2 / RL; CONTRAST 'Linear trend across quartiles' quartile -3 -1 1 3; RUN; - 该语句输出的卡方检验p值即为线性趋势p值,大样本下结果和有序变量赋值法几乎完全一致。
注意事项与操作技巧
- 不要将两两比较的显著性和趋势显著性混淆:两两比较是单个组和参照组的差异检验,趋势检验是整体梯度的检验,二者的检验假设完全不同,两两比较全不显著、但趋势检验显著是非常常见的结果,尤其是样本量有限、组间差异梯度较缓的场景。
- 如果线性趋势检验有统计学意义,建议补充限制性立方样条(RCS)拟合蛋白X和死亡风险的剂量反应关系,验证线性假设是否成立,如果存在明显的非线性拐点,需要同时报告非线性趋势结果,不能只报告线性趋势。
- 趋势检验的协变量调整策略必须和原哑变量模型完全保持一致,不得随意增删协变量,否则结果不具备可比性。
- 若四分位分组是在亚组(如非病例组、对照组)中划分而非全人群划分,需要在结果解释时说明分组方式,避免引入恒定时间偏倚。
内容的提问来源于stack exchange,提问作者S P
相关产品推荐
相关产品推荐

