利用一個perl語言寫的工具:snpeffTomaf 一行代碼即可實現非常方便
github地址鏈接:https://github.com/tsy19900929/snpeffToMaf
將此倉庫中的腳本和示例文件下載下來,參照readme文件,進行操作就可以。
用snpeffToMaf.pl 這個腳本,將示例文件替換成自己需要使用的文件運行下面這行代碼即可實現。
### in shell 將vcf文件轉化成maf文件
perl snpeffToMaf.pl yourSampleName.snpeff.vcf 100 0.05 100 for minimum depth 0.05 for minimum allele frequency
### 將轉化好的maf文件進行整合,變成一個大的總體的maf文件
cat *maf | awk '!/Hugo_Symbol/ || NR==1' > all.maf
concatenate all of yourSampleName.maf, but not necessary
####用maftools進行可視化in R
library(maftools)syn <- c("synonymous_variant","start_retained","stop_retained_variant")df <- data.table::fread("all.maf")vc <- names(table(df$Variant_Classification))nonSyn <- setdiff(vc,syn)colors <- rainbow(length(nonSyn))names(colors) <- nonSynmaf <- read.maf("all.maf", vc_nonSyn = nonSyn)plotmafSummary(maf, rmOutlier = TRUE, addStat = 'median', dashboard = TRUE, titvRaw = FALSE, color = colors)
