全基因组关联分析(Genome-wide association study),是指在人类全基因组范围内找出存在的序列变异,即单核酸多态性 (SNP) ,从中筛选出与疾病相关的SNPs。
简单来说就是:
找出基因中哪些序列变异 (SNP),与疾病相关!
基因(改变)与表型(phenotype,总之就是各种各样的看得到的现象)有没有关系!
核心就是关联!
我认为数据分析是从全基因组分析得出的vcf文件开始的,以下分析流程来自GWAS——复杂疾病相关的遗传因素的研究方法及实操 - 知乎
个人感觉原博主的代码有点小瑕疵,我按照自己的理解全都修改好了
#安装plink和vcftools,我的服务器是ubuntu的
conda install -c bioconda plink
sudo apt install vcftools
#下载数据,这里用的是狗的数据
wget https://de.cyverse.org/dl/d/E0A502CC-F806-4857-9C3A-BAEAA0CCC694/pruned_coatColor_maf_geno.vcf.gz
wget https://de.cyverse.org/dl/d/3B5C1853-C092-488C-8C2F-CE6E8526E96B/coatColor.phen
#解压
gunzip pruned_coatColor_maf_geno.vcf.gz
#将vcf文件转换成map、ped格式,然后转换为Plink二进制格式(fam,bed,bim)
vcftools --vcf pruned_coatColor_maf_geno.vcf --plink --out coatColor
plink --file coatColor --allow-no-sex --dog --make-bed --noweb --out coatColor.binary
#候选等位基因列表创建,awk编辑文本
cat pruned_coatColor_maf_geno.vcf | awk 'BEGIN{FS="\t";OFS="\t";}/#/{next;}{{if($3==".")$3=$1":"$2;}print $3,$5;}' > alt_alleles
#关联分析
plink --bfile coatColor.binary --make-pheno coatColor.phen "yellow" --assoc --reference-allele alt_alleles --allow-no-sex --adjust --dog --noweb --out coatColor
#R语言作图,我这里是将所有R代码写在脚本里
data=read.table("coatColor.assoc", header=TRUE); data=data[!is.na(data$P),]
bitmap("coatColor_man.bmp", width=20, height=10)
library(qqman)
png("man.png")
manhattan(data, p = "P", col = c("blue4", "orange3"),suggestiveline = 12,genomewideline = 15,chrlabs = c(1:38, "X"), annotateTop=TRUE, cex = 1.2);
dev.off()
这里我提个疑问:没看懂原博文里的“3、画图的数据处理”是要干什么?GWAS——复杂疾病相关的遗传因素的研究方法及实操 - 知乎
#数据处理
unad_cutoff_sug=$(tail -n+2 coatColor.assoc.adjusted | awk '$10>=0.05' | head -n1 | awk '{print $3}')
unad_cutoff_conf=$(tail -n+2 coatColor.assoc.adjusted | awk '$10>=0.01' | head -n1 | awk '{print $3}')