bioinfo:계통수_작성하기
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
bioinfo:계통수_작성하기 [2023/08/11 09:45] – [계통수 작성하기] hyjeong | bioinfo:계통수_작성하기 [2025/02/23 12:57] (current) – [Species level을 벗어나는 genome의 MSA를 얻으려면 - ezTree] hyjeong | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== 계통수 작성하기 ====== | ====== 계통수 작성하기 ====== | ||
- | Roary 또는 다른 multiple sequence alignment(MSA) 소프트웨어로 만들어진 염기서열 정렬 결과물을 [[http:// | + | Roary 또는 다른 multiple sequence alignment(MSA) 소프트웨어로 만들어진 |
Alignment로부터 불량한 곳을 제거하려면 trimAl 이외에도 Gblocks를 쓸 수 있다. [[https:// | Alignment로부터 불량한 곳을 제거하려면 trimAl 이외에도 Gblocks를 쓸 수 있다. [[https:// | ||
Line 7: | Line 7: | ||
정렬된 MSA 자료의 조작에는 [[https:// | 정렬된 MSA 자료의 조작에는 [[https:// | ||
- | MSA로부터 간단하게 계통수를 만드는 방법은 | + | ===== Species level을 벗어나는 genome의 |
+ | Roary는 하나의 species에 속하는 균주 유전체를 대상으로 core gene group을 동정한 뒤 이로부터 | ||
- | $ trimal | + | 51개 // |
- | $ fasttree | + | |
+ | #FASTA file의 목록을 먼저 만든다. | ||
+ | $ find fasta_230812.51 -type f > list_230812.51 | ||
+ | $ cat list_230812.51 | ||
+ | fasta_230812.51/ | ||
+ | fasta_230812.51/ | ||
+ | fasta_230812.51/ | ||
+ | ... | ||
+ | #30개 스레드를 사용한다. | ||
+ | #트리 모델은 JTT를 기본으로 한다. | ||
+ | # Ryzen server: / | ||
+ | (base) $ nohup ./ | ||
+ | $ ls -l | grep run_230812 | ||
+ | -rw-rw-r-- 1 hyjeong hyjeong 7941159 | ||
+ | -rw-rw-r-- 1 hyjeong hyjeong | ||
+ | -rw-rw-r-- 1 hyjeong hyjeong | ||
+ | drwxrwxr-x 2 hyjeong hyjeong | ||
+ | |||
+ | Newick 파일에서 각 leaf label은 최초에 투입한 FASTA file명(예: | ||
+ | ===== MSA로부터 newick file 만들어 보기 ===== | ||
+ | |||
+ | |||
+ | Roary가 생성한 MSA(core_gene_alignment.aln)로부터 간단하게 계통수를 만드는 방법은 다음과 같다. | ||
+ | |||
+ | | ||
+ | $ fasttree | ||
| | ||
세균의 유전체 진화에서는 horizontal gene transfer(HGT)가 매우 빈번히 일어난다. HGT로 유입된 영역을 제거하지 않으면 정확한 계통수를 작성하기가 어려워질 수 있다. 이를 위해 [[https:// | 세균의 유전체 진화에서는 horizontal gene transfer(HGT)가 매우 빈번히 일어난다. HGT로 유입된 영역을 제거하지 않으면 정확한 계통수를 작성하기가 어려워질 수 있다. 이를 위해 [[https:// | ||
Line 16: | Line 42: | ||
Newick 포맷의 파일은 [[http:// | Newick 포맷의 파일은 [[http:// | ||
- | ===== R에서 트리 | + | ===== R에서 트리 |
+ | R에서 tree file을 다루려면 ape package를 사용하면 된다. | ||
+ | |||
+ | > library(ape) | ||
+ | > myTree = ape:: | ||
+ | > myTree | ||
+ | |||
+ | Phylogenetic tree with 11 tips and 10 internal nodes. | ||
+ | |||
+ | Tip labels: | ||
+ | NCTC2916, Ibaraki2007, | ||
+ | |||
+ | Rooted; includes branch lengths. | ||
+ | > myTree$tip.label | ||
+ | [1] " | ||
+ | [6] " | ||
+ | [11] " | ||
+ | > plot(myTree) # tree 구조가 그림으로 표시된다. | ||
+ | # Newick format의 텍스트를 직접 | ||
+ | > myTree2 <- ape:: | ||
+ | |||
+ | R에서 트리 자료를 본격적으로 다루려면 [[https:// | ||
===== IQ-TREE로 maximum likelihood를 이용한 계통분류학적 추론하기 ===== | ===== IQ-TREE로 maximum likelihood를 이용한 계통분류학적 추론하기 ===== | ||
+ | [[http:// | ||
+ | 1. Infer maximum-likelihood tree from a sequence alignment (example.phy) | ||
+ | with the best-fit model automatically selected by ModelFinder: | ||
+ | | ||
+ | | ||
+ | 2. Perform ModelFinder without subsequent tree inference: | ||
+ | | ||
+ | (use '-m TEST' to resemble jModelTest/ | ||
+ | | ||
+ | 3. Combine ModelFinder, | ||
+ | | ||
+ | | ||
+ | 4. Perform edge-linked proportional partition model (example.nex): | ||
+ | | ||
+ | | ||
+ | | ||
+ | 5. Find best partition scheme by possibly merging partitions: | ||
+ | | ||
+ | (use '-m TESTMERGEONLY' | ||
+ | | ||
+ | 6. Find best partition scheme followed by tree inference and bootstrap: | ||
+ | | ||
+ | | ||
+ | 7. Use 4 CPU cores to speed up computation: | ||
+ | | ||
+ | 8. Polymorphism-aware model with HKY nucleotide model and Gamma rate: | ||
+ | | ||
+ | | ||
+ | 9. PoMo mixture with virtual popsize 5 and weighted binomial sampling: | ||
+ | | ||
bioinfo/계통수_작성하기.1691714712.txt.gz · Last modified: 2023/08/11 09:45 by hyjeong