群体遗传学中测的很多个个体,得到了最终的SNP vcf文件,需要将其分成群体,看那几个物种聚在一起,一般使用的软件就是STRUCTURE,
但是STREUTURE运行速度极慢,后面frappe软件提升了速度,但是也不是很快;admixture凭借其运算速度,成为了主流的分析软件。
admixture 软件一共分为5步:
# step 1 将vcf文件转化成ped文件
/USER/zhusitao/Software/vcftools-master/bin/vcftools --vcf total.final.snp.vcf --plink --out xj
# step 2 利用plink对ped文件进行过滤生成bed文件
/USER/zhusitao/Software/plink/plink --noweb --file xj --geno 0.05 --maf 0.05 --hwe 0.0001 --make-bed --out QC
# step 3 利用 admixture 计算
for K in 1 2 3 4 5 6 7;do /USER/zhusitao/Software/admixture_linux-1.3.0/admixture --cv QC.bed $K|tee log${K}.out;done
# step 4 besk K 交叉熵最小就是最佳的分群
grep -h CV log*.out
# step 5 R画图
tbl = read.table("/USER/zhusitao/Project/xj/reseq/result/11.admixture/QC.7.Q");
pdf("/USER/zhusitao/Project/xj/reseq/result/11.admixture/Q7.pdf")
barplot(t(as.matrix(tbl)),col= rainbow(7),xlab="Individual", ylab="Ancestry",border = NA,space = 0);
dev.off()