bracken_for_species_abundance_esimation
Differences
This shows you the differences between two versions of the page.
Next revision | Previous revision | ||
bracken_for_species_abundance_esimation [2017/04/21 13:31] – created hyjeong | bracken_for_species_abundance_esimation [2021/03/17 13:09] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
+ | ====== Bracken: estimating species abundance in metagenomic data ====== | ||
+ | Kraken은 매우 빠르고 능률적인 read classifier이다. 즉 read 하나에 대해서 taxonomic label을 부여하는 것이 고유 기능이다. 그러나 metagenomics 연구에서 가장 근본적인 질문 중 하나는 샘플 안에 존재하는 미생물이 각 종별로 얼마나 존재하는가, | ||
+ | |||
+ | * 논문: https:// | ||
+ | * 프로그램 홈페이지: | ||
+ | |||
+ | ===== 사용 방법 ===== | ||
+ | Bracken 웹사이트의 [[https:// | ||
+ | - DNA read를 Kraken으로 분류하기 | ||
+ | - Kraken database(library, | ||
+ | - Kmer 분포를 계산하기 | ||
+ | - Abundance estimation | ||
+ | Bracken 분석에 필요한 Kraken 결과물은 kraken-report가 생성하는 파일이다. kraken 명령어가 만들어내는 각 read마다 한줄씩 classification 정보가 들어있는 파일이 아님에 유의하라. 또한 두번째 과정을 수행하려면 Kraken DB 작성에 투입한 FASTA genome sequence file이 남아있어야 한다. 따라서 직접 DB를 만든 뒤 해당 디렉토리를 청소하면 안된다. | ||
+ | |||
+ | ==== Step 1. Kraken classification of DNA reads ==== | ||
+ | Kraken에 대한 상세한 설명 자료는 [[https:// | ||
+ | $ KRAKEN_DB=/ | ||
+ | $ kraken --db $KRAKEN_DB --threads=16 READS.fastq > READS.fastq.kraken | ||
+ | $ kraken-report --db $KRAKEN_DB READS.fastq.kraken > READS.fastq.kraken.report | ||
+ | |||
+ | ==== Step 2. Classifying a full kraken database ==== | ||
+ | 라이브러리는 ${KRAKEN_DB}/ | ||
+ | |||
+ | $ kraken --db=${KRAKEN_DB} --fasta-input --threads=10 <( find -L library -name " | ||
+ | $ perl count-kmer-abundances.pl --db=${KRAKEN_DB} --read-length=75 database.kraken | ||
+ | |||
+ | ==== Step 3. Generation of Kmer distribution file ==== | ||
+ | $ python generate_kmer_distribution.py -i database75mers.kraken_cnts -o KMER_DISTR.TXT | ||
+ | | ||
+ | ==== Step 4. Abundance estimation ==== | ||
+ | 이제 최종 단계만 남았다. 필요한 파일은 query reads에 대한 Kraken report, 그리고 바로 직전에 만든 KMER_DISTR.TXT 파일이다. | ||
+ | |||
+ | $ python estimate_abundance.py -i READS.fastq.kraken.report -k KMER_DISTR.TXT -l CLASSIFICATON_LEVEL -t THRESHOLD -o OUTPUT_FILE.TXT | ||
+ | |||
+ | * CLASSIFICATION_LEVEL: | ||
+ | * THRESHOULD: Default = 10. Species classification을 할 때 이 수치 이하의 read를 가진 종은 abundance estimation 과정에서 상위 taxonomy level의 read를 추가적으로 배정받지 못한다. | ||
+ | |||
+ | 이 명령을 실행하는 동안 표준 에러로 다음과 같은 메시지가 출력된다. | ||
+ | |||
+ | PROGRAM START TIME: 03-29-2017 23:50:00 | ||
+ | BRACKEN SUMMARY (Kraken report: report) | ||
+ | >>> | ||
+ | >>> | ||
+ | >> Number of genuses with reads > threshold: 92 | ||
+ | >> Number of genuses with reads < threshold: 240 | ||
+ | >>> | ||
+ | >> Total reads kept at genuses level (reads > threshold): 5904658 | ||
+ | >> Total reads discarded (genuses reads < threshold): 615 | ||
+ | >> Reads distributed: | ||
+ | >> Reads not distributed (eg. no genuses above threshold): 487 | ||
+ | >> Unclassified reads: 554636 | ||
+ | BRACKEN OUTPUT PRODUCED: OUTPUT_FILE.txt | ||
+ | PROGRAM END TIME: 03-29-2017 23:50:00 | ||