1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

.vcfからADMIXTUREを回すまでメモ

Posted at

メモ書きです。

ADMIXTUREを回すにあたっては、@YF_bioさんの記事「populationsから出力したファイルでADMIXTURE解析をする」がたいへん詳しく書かれており、参考になります。そちらの記事ではStacksの出力ファイルを用いて解析を行っています。こちらではipyrad出力の.vcfファイルを用いてADMIXTUREを回したときのメモ書きを残しておきます。

環境

macOS 14.2.1
ipyrad  0.9.95
PLINK 1.90
ADMIXTURE 1.3.0

ADMIXTUREの導入については省きます。

ADMIXTUREのinputファイルには
.ped, .map(PLINK形式)を使用する方法
.bed, .bim, .fam(PLINK バイナリ形式)を使用する方法
.geno, .ind, .snp(EIGENSOFT形式)を使用する方法
があるようです。
バイナリ形式が速そうなのでそちらの方法でやっています。
(EIGENSOFT形式をインプットにするのは触れてないのでわかりません)

.vcfからの変換(PLINK)

ターミナル
./plink --vcf nantyara.vcf --recode 12 --double-id --allow-extra-chr 0 --out nantyara_input
#ここはYF-bioさんと同じです

./plink --file nantyara_input --allow-extra-chr 0 --make-bed --out nantyara_input

これで.bedまで変換します。
同時に.bim.famができます。.nosex.logもできます。

なお、フィルタリングもできる。前処理段階である程度フィルタリングしているかな、と思うのでしなくていいかも。

ターミナル
./plink --allow-extra-chr --bfile nantyara_input \
    --geno 0.1 \
    --maf 0.05 \
    --indep-pairwise 50 5 0.2 \
    --make-bed \
    --out cleaned_nantyara_input

./plink --bfile cleaned_nantyara_input --missing --out check_missing
#データチェック

--missing produces sample-based and variant-based missing data reports
PLINKサイトより引用

ADMIXTUREでの解析

K=1からK=10までを解析します。ここからの流れもYF_bioさんの記事と同じですが、同じようなことを一応書いておきます。
for構文で一気に解析します。

ターミナル
for K in {1..10}; do ./admixture -C 0.0001 -s time --cv cleaned_for_admixture.bed $K | tee log${K}.out; done
#Cross-validationを.txtで保存
grep -h CV log*.out > CV-error.txt
cat CV-error.txt
#.Qファイルをまとめる
mkdir Qmatrix ; cp *.Q Qmatrix/ ; zip -r Qmatrix.zip Qmatrix/

あとはなんらかの手段でプロットするだけです。
Rでプロットする方法だけ書き残しておきます。

R
library(pophelper)
#任意の作業ディレクトリで
setwd("ninnino/sagyou/directory")
#Qmatrixに.Qファイルをまとめている
qfiles <- list.files(path="Qmatrix", pattern="*.Q", full.names=TRUE)
qlist <- readQ(files=qfiles)
p <- plotQ(qlist[c(1:1-)], imgoutput="join", returnplot=T, exportplot=F, basesize=11, showindlab=T)
print(p$plot[[1]])
#すると一枚に結果がまとまったデータが生成されます。やったね

以上です。
自身のメモついでの記事なので、雑なまとめですが参考になれば幸いです。

引用文献・サイト

・Alexander, D.H., Lange, K. 2011. Enhancements to the ADMIXTURE algorithm for individual ancestry estimation. BMC Bioinformatics 12: 246 https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-12-246
@YF_biopopulationsから出力したファイルでADMIXTURE解析をする
・ADMIXTUREのマニュアル:http://dalexander.github.io/admixture/admixture-manual.pdf
・PLINKのマニュアル:https://www.cog-genomics.org/plink/1.9/
・ipyrad公式サイト:https://ipyrad.readthedocs.io/en/master/

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?