如果是一组基因来把病人进行分组,可以······
如果是一组基因来把病人进行分组,可以取基因集的第一主成分来把病人样本分组。
生存分析最重要的就是分组,来检验你的分组的那个标准或者指标是否能区分生存,比如下面的代码,根据表达量高低进行分组:
dat=merge(cxb6_expr,meta,by='gsm')
head(dat)
table(dat$study)
生存分析的数据如下:
> head(dat)
gsm value group month event study
1 GSM107072 6.610591 low 49.68 1 GSE1456
2 GSM107073 4.871095 low 97.80 0 GSE1456
3 GSM107074 5.838876 low 26.64 0 GSE1456
4 GSM107075 7.389684 high 98.76 0 GSE1456
5 GSM107076 5.332938 low 66.60 0 GSE1456
6 GSM107077 4.724775 low 99.60 0 GSE1456
>
其实只需要3列,就是group month event
即可,如下:
library(survival)
library(survminer)
# 利用ggsurvplot快速绘制漂亮的生存曲线图
#dat=dat[dat$study==1,]
sfit <- survfit(Surv(month, event)~group, data=dat)
sfit
summary(sfit)
ggsurvplot(
sfit, risk.table = TRUE, ggtheme = theme_bw(),
pval = TRUE, pval.coord = c(0, 0.03)
)
出图如下:
如果是一个基因突变与否,也很容易区分成两个组别。
但如果是一组基因的表达量呢?
这时候可以对着一组基因来取第一主成分,使用其第一主成分来对病人进行分组。
只要分组了, 那么生存分析或者其它,就是水到渠成的事情咯。