admin管理员组文章数量:1589781
写在前面的话,本函数仅适用于NHANES数据的COX回归亚组交互分析,不适用于其他情况,请注意甄别。电子产品,售出不能退换。
在SCI文章中,交互效应表格(通常是表五)能为文章锦上添花,增加文章的信服力,增加结果的可信程度,还能进行数据挖掘。什么是亚组,通常就是特殊类型人群,比如男女,种族等,就是说你的数据放入特殊人群中结果还可靠吗?如果在各个特殊人群中,你的结果很稳定,说明你的结论很可靠。如果亚组的结论和你的数据数据结论相反,你可以拿来做个新论题。还可以比较不同亚组之间有无区别,比如做了心脏支架和没做支架的区别,可以发现很多新思路,易于数据挖掘。
在既往文章《代码+视频–NHANES数据(复杂调查数据)亚组交互函数1.6尝鲜版(P for interaction)发布—用于一键生成交互效应表》中,咱们发布了svy.scitb5函数,反响还不错,基本没啥大问题, 但是svy.scitb5函数只能进行线性回归和cox回归。本次发布能用于cox回归的svyscitb5.coxph函数,就是在之前的svy.scitb5函数加个后缀名,还是很好记的。
下面我来介绍一下,咱们先导入数据
library(survey)
bc<-read.csv("E:/r/test/nahnesme.csv",sep=',',header=TRUE)
bc <- na.omit(bc)
我介绍一下数据,SEQN:序列号,RIAGENDR, # 性别, RIDAGEYR, # 年龄,RIDRETH1, # 种族,DMDMARTL, # 婚姻状况,WTINT2YR,WTMEC2YR, # 权重,SDMVPSU, # psu,SDMVSTRA,# strata,LBDGLUSI, #血糖mmol表示,LBDINSI, #胰岛素( pmmol/L),PHAFSTHR #餐后血糖,LBXGH #糖化血红蛋白,SPXNFEV1, #FEV1:第一秒用力呼气量,SPXNFVC #FVC:用力肺活量,ml(估计肺容量),LBDGLTSI #餐后2小时血糖,factor.FVC是我把肺活量分为了2分类,方便用于测试。
把分类变量转成因子
bc$DMDMARTL<-ifelse(bc$DMDMARTL==1,1,0)
bc$RIAGENDR<-as.factor(bc$RIAGENDR)
bc$RIDRETH1<-as.factor(bc$RIDRETH1)
bc$DMDMARTL<-as.factor(bc$DMDMARTL)
bc$oGTT2<-as.factor(bc$oGTT2)
建立抽样调查函数
bcSvy2<- svydesign(ids = ~ SDMVPSU, strata = ~ SDMVSTRA, weights = ~ WTMEC2YR,
nest=TRUE,data = bc)
设定协变量和交互变量,这里要注意一下cov1指协变量,Interaction为交互变量,交互变量
cov1<-c("DMDMARTL","RIAGENDR","LBDINSI","RIDRETH1")
Interaction<-c("DMDMARTL","RIAGENDR","RIDRETH1")
导入我写的函数
source("E:/r/test/svyscitb5cox18.R")
成功导入后,右上界面应该出现10个函数
函数的主体为
svy.scitb5 (data,x,y,Interaction,cov=NULL,time=NULL,family=NULL,method=NULL,
ids=NULL,strata=NULL,weights=NULL,svydstr=NULL)
我来解释一下data是数据,必须数据框形式,x是你研究的目标变量,y是你的结局变量,Interaction是你的分层变量,这个必须是分类变量并转成因子,cov是你的协变量。统一使用family=“svycoxph”,svydstr这里填入调查函数,这里只支持COX回归。如果你使用过我写的svy.scitb5函数,这个函数使用起来完全没有压力,就是多个时间参数而已。
out<-svyscitb5.coxph(data=bc,x="RIDAGEYR",y="factor.FVC",time="time",Interaction=Interaction,
cov = cov1,family="svycoxph",svydstr=bcSvy2)
一键生成表格
绘图
plotforest(out)
下面咱们来验证一下算得对不对,就以DMDMARTL婚姻状态这个分层为例子
####亚组
dat1<-subset(bc,bc$DMDMARTL==0)
dat2<-subset(bc,bc$DMDMARTL==1)
bcSvy21<- svydesign(ids = ~ SDMVPSU, strata = ~ SDMVSTRA, weights = ~ WTMEC2YR,
nest=TRUE,data = dat1)
bcSvy22<- svydesign(ids = ~ SDMVPSU, strata = ~ SDMVSTRA, weights = ~ WTMEC2YR,
nest=TRUE,data = dat2)
fit1<-svycoxph(Surv(time, factor.FVC) ~ RIDAGEYR+RIAGENDR+LBDINSI+RIDRETH1, design = bcSvy21)
fit2<-svycoxph(Surv(time, factor.FVC) ~ RIDAGEYR+RIAGENDR+LBDINSI+RIDRETH1, design = bcSvy22)
summary(fit1)
summary(fit2)
可以看到DMDMARTL=0的时候,HR是0.99,P值是0.203,DMDMARTL=1的时候HR是1.01,P值是0.141,和咱们算出来是非常接近的,所以可靠性是没有问题的。
在既往函数中,我要求协变量是要包含有交互变量的,现在也可以通过contain参数关掉这个设置
咱们重新设置一下交互变量和协变量
cov1<-c("DMDMARTL","RIAGENDR","LBDINSI")
Interaction<-c("DMDMARTL","RIAGENDR","RIDRETH1")
我们可以看到协变量没有"RIDRETH1"这个变量,没关掉前是做不出来的
out<-svyscitb5.coxph(data=bc,x="RIDAGEYR",y="factor.FVC",time="time",Interaction=Interaction,
cov = cov1,family="svycoxph",svydstr=bcSvy2)
关掉后就可以生成结果了
out<-svyscitb5.coxph(data=bc,x="RIDAGEYR",y="factor.FVC",time="time",Interaction=Interaction,
cov = cov1,family="svycoxph",svydstr=bcSvy2,contain=F)
接下来介绍一下X是分类变量的情况
假设我研究的变量x是婚姻状态,y变量是肺活量,想了解在这个分层的关系
cov1<-c("RIDAGEYR","RIAGENDR","LBDINSI","RIDRETH1")
Interaction<-c("RIAGENDR","RIDRETH1")
生成方法都一样
out<-svyscitb5.coxph(data=bc,x="DMDMARTL",y="factor.FVC",time="time",Interaction=Interaction,
cov = cov1,family="svycoxph",svydstr=bcSvy2)
上图我要解释一下,做分类变量的时候需要设定一个参考,在DMDMARTL这个分层比较的时候,RIAGENDR.1_DMDMARTL.0是被认定做参考的,什么意思呢?就是当RIAGENDR等于1和DMDMARTL等于0这个亚组的人群是被默认为做参考比较的,其他组都是和它进行比较,分类变量进行亚组交互的时候,分类最好不要太多,要不数据会很大,而且有些层分不到数据就会显示数据缺失NA。
一键生成森林图
plotforest(out)
另外提一下,svyscitb5.coxph 函数method参数,这个参数是用来计算P for interaction值的,它有(“LRT”, “Wald”)两个选项,这个参数平时你不用理也不用填。为什么我要提这个东西呢?因为有时候你的模型数据极端值太小,使用LRT方法算不出来,然后咱们需要改一下,平时一般不用理。
如果有如下报错
需要对函数添加一个method="Wald。
参看文章《NHANES数据(复杂调查数据)亚组交互函数1.4尝鲜版(P for interaction)发布—用于一键生成交互效应表》
如果可以你还不会, 参看我既往的svy.scitb5函数的视频,差不多的
代码+视频--NHANES数据(复杂调查数据)亚组交互函数1.4尝鲜版(P for interaction)发布---用于一键生成交互效应表
需要获取svyscitb5.coxph函数,请看下面这篇文章
NHANES数据(复杂调查数据)COX回归亚组交互函数1.8尝鲜版(P for interaction)发布
本文标签: 数据函数NHANESCOXInteraction
版权声明:本文标题:NHANES数据(复杂调查数据)COX回归亚组交互函数1.8尝鲜版(P for interaction)发布 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dongtai/1728075458a1144413.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论