1.生存曲線
基礎(chǔ)包survival+擴展包survminer。
survival包內(nèi)置肺癌數(shù)據(jù)集lung秘噪。
library(survival)
library(survminer)
str(lung)
#擬合模型
fit <- survfit(Surv(time,status)~sex,data=lung)
#繪制生存曲線
ggsurvplot(fit,
pval = TRUE, #添加log rank檢驗的p值
conf.int = TRUE, #添加置信區(qū)間
risk.table = TRUE, #添加風險表
risk.table.col='strata', #根據(jù)數(shù)據(jù)分組為風險表添加顏色
linetype = 'strata', #不同組別生存曲線線型
surv.median.line = 'hv', #標注中位生存時間
ggtheme = theme_bw(), #主題風格
palette = c("#E7B800","#2E9FDF")) #顏色風格
生存曲線進一步修飾狸吞。
ggsurvplot(fit,
pval = TRUE,
conf.int = TRUE,
conf.int.style='ribbon', #置信區(qū)間風格
xlab='Time in days',
break.time.by=200, #將x軸按200為間隔切分
ggtheme = theme_light(),
risk.table = 'abs_pct', #風險表中添加絕對數(shù)和相對數(shù)
risk.table.y.text.col=TRUE, #風險表文字顏色
risk.table.y.text=FALSE, #以條圖展示風險表標簽(非文字)
ncensor.plot=TRUE, #展示隨訪中不同時間點死亡和刪失的情況
surv.median.line = 'hv',
legend.labs=c('Male','Female'), #改變圖例標簽
palette = c("#E7B800","#2E9FDF"))
其他類型生存曲線繪制。
fun參數(shù)默認pct (survival probability in percentage)指煎,即累計生存率蹋偏,此外fun還可設(shè)為cumhaz(cumulative hazard)累計風險,或event(cumulative events)累計的結(jié)局事件發(fā)生數(shù)贯要,即累計死亡人數(shù)暖侨。
#累計風險
ggsurvplot(fit,
conf.int = TRUE,
risk.table.col="strata",
ggtheme = theme_bw(),
palette = c("#E7B800","#2E9FDF"),
fun = 'cumhaz')
#累計死亡人數(shù)
ggsurvplot(fit,
conf.int = TRUE,
risk.table.col="strata",
ggtheme = theme_bw(),
palette = c("#E7B800","#2E9FDF"),
fun = 'event')
#注意y軸是累計死亡人數(shù)占總?cè)藬?shù)比例
2. meta分析森林圖
常見meta分析(重分析)圖形,如森林圖崇渗、漏斗圖字逗。
#install.packages('meta')
library(meta)
data("Olkin95") #內(nèi)置
#metabin進行二分類數(shù)據(jù)的meta分析
metal <- metabin(event.e, #實驗組事件發(fā)生數(shù)
n.e, #實驗組樣本量
event.c, #對照組事件發(fā)生數(shù)
n.c, #對照組樣本量
data = Olkin95,subset = c(41,47,51,59), #選取4篇文章meta分析
sm="RR", #匯總指標
method = "I", #結(jié)果匯總方法,I表倒方差法
studlab = paste(author,year))#森林圖上文獻標識
forest(metal)
認識一下普通meta分析森林圖的幾大基本元素宅广。圖形的最左邊葫掉,即第一部分,是納入文獻的標識跟狱,此處使用的是第一作者姓名加上發(fā)表日期俭厚,這個標識是由metabin()函數(shù)中的studlab參數(shù)來決定的。依次往右驶臊,第二部分是納入文獻中的原始數(shù)據(jù)挪挤,由于此處使用的是二分類數(shù)據(jù)叼丑,所以有實驗組和對照組之分,在每個組中扛门,又列出了事件發(fā)生數(shù)和總樣本數(shù)鸠信,即events和total。圖形第三部分是森林圖的圖形主干论寨,展示的是每篇納入文獻的點估計和區(qū)間估計星立,大家注意,在圖中葬凳,納入文獻的點估計是用方塊表示绰垂,而在所有方塊下面,就是匯總的結(jié)果火焰,用菱形表示劲装,垂直于菱形中央的虛線表示的是匯總結(jié)果的點估計值,菱形的延伸范圍表示匯總結(jié)果的區(qū)間估計值荐健。繼續(xù)往右酱畅,第四部分展示了每篇納入文獻的RR值的點估計和區(qū)間估計值。圖形第五部分展示的是不同模型下(固定效應(yīng)模型和隨機效應(yīng)模型)的每篇納入文獻所占權(quán)重江场。第六部分位于圖形的下方,可以看到圖中展示了固定效應(yīng)模型和隨機效應(yīng)模型下的匯總結(jié)果窖逗,并且展示了文獻之間的異質(zhì)性和異質(zhì)性檢驗結(jié)果址否。
forest函數(shù)的參數(shù)非常多,下面對其中主要參數(shù)進行設(shè)置碎紊。
修飾的森林圖佑附。
forest(metal,
studlab = TRUE, #添加文獻標識
layout = 'RevMan5', #布局模式,JAMA
comb.fixed = TRUE, #展示固定效應(yīng)模型結(jié)果
comb.random = FALSE, #展示隨機效應(yīng)模型結(jié)果
overall = TRUE, #展示匯總值
lty.fixed = 2,#固定效應(yīng)模型點估計值的線型仗考,1-6
prediction = TRUE,#展示匯總值預(yù)測區(qū)間
xlab = 'RR estimates',
xlab.pos = 1, #x軸標簽中點的位置
xlim = c(0.1,5),
ref = 1, #設(shè)置參考值
lab.e = '實驗組',
lab.c='對照組',
col.square='forestgreen', #每篇文獻對應(yīng)方形顏色
col.square.lines='blue',#每篇文獻對應(yīng)區(qū)間線條顏色
col.diamond.fixed='deeppink1',#固定效應(yīng)模型匯總值的菱形顏色
test.overall=TRUE, #匯總值統(tǒng)計檢驗
fs.study=10, #每篇文獻結(jié)果字體大小
ff.study='italic',
fs.study.label=11, #文獻標識字體大小
ff.study.label='bold',
fs.axis=5,
ff.axis='italic',
ff.smlab='bold.italic',
ff.fixed='plain',
ff.hetstat='plain',
digits=3
)
統(tǒng)計結(jié)果匯總森林圖
分組匯總結(jié)果音同。
使用forestplot包。
3.曼哈頓圖
展示全基因組關(guān)聯(lián)分析(GWAS)結(jié)果秃嗜。
#install.packages('qqman')
library(qqman)
gwasdata <- data.frame(SNP=1:50000,
CHR=c(paste0('Chr',rep(1:10,each=50000))),
BP=rep(1:50000,10), #染色體中SNP位點的位置
P=abs(rnorm(50000*10,0.2,0.3))) #SNP位點的統(tǒng)計檢驗P值
library(RColorBrewer)
manhattan(gwasdata,
col=brewer.pal(10,'Spectral'), #定義x軸染色體顏色
cex=0.6,
chrlabs = rep(paste0('Chr',1:10)), #自定義染色體標號
suggestiveline = -log10(1e-5), #添加指示線权均,默認-log10(1e-5)
genomewideline = -log10(1e-7))#添加P值顯著線,默認-log10(5e-10)
#內(nèi)置數(shù)據(jù)
str(gwasResults)
manhattan(gwasResults,
highlight = snpsOfInterest, #需要標亮的SNP位點
col=c("#A4D3EE","#DDA0DD"))
#單條染色體
manhattan(subset(gwasResults,CHR==2),col="#DDA0DD")