본문 바로가기
카테고리 없음

[Bedtools] fasta 파일 특정 영역 masking하기

by 코딩하는 미토콘드리아 Bioinformatics Lab 2022. 10. 6.
반응형

Masking 을 하는 목적은 여러가지가 있을 수 있습니다.

mapping 단계에서 제한을 주거나(예를들어 pseudogene region),

low-complexity sequence 부분에 대해서 masking을 해서

위양성률(false positive) 을 줄일 수 있습니다. 

 

이를 실습하기 위해 두가지 파일을 준비 하였습니다.

1. hg19 fasta 파일(masking 하고자 하는 대상) 

2. 영역이 지정된 bed (masking 영역 하고자 하는 영역)

 

그럼 이제,

hg19 참조서열의 chr20:10000000-10001000 영역을 masking 해보겠습니다.

우선 hg19 chr20:10000000-10001000 영역 sequence 정보를 확인하겠습니다.

 

samtools faidx ./hg19.fasta chr20:10000000-10001000

[skkwon1048@server Test]$ samtools faidx ./hg19.fasta chr20:10000000-10001000
>chr20:10000000-10001000
Ttgtttactacagctttgtagtaaattttgaactctaaagtgttagttctctaactttgt
ttgtttttcaagagtgttttgactcttcttactgcatcccttgcatttccatatggactt
tataatcagccatgtcaacttctgcaagaaagacagctaggattttgataaggattgtgt
tgaatctgtagtccaattttgggaatactaccatgttaacatcgtcttcccatccatgca
cgtgcaatagcttaccatttatttggtcttcctcaatttctgtcaacaatgatttgtagt
tttcagttgcaagtcttgcacttcttttgttaaactttttccaaatatttattcttctta
attacataattctcataattaataaaattctgaaattttcttaatttcatttttgTGGCC
ATGCACTttaaaacttgccttttaacaagacttccagatgattcttgtgaacattaagtt
tgtgaagtgctTCTCTATTGACAAACTGAACTCACGTGACATTCCACACAGCACTGGCAA
ATTCTGTCCCGTAACTCCGCTAGCTCTCCAACAAGAAGTGACTTGACGCAGCCCAAGGTT
ACTACTTAACACAATGAATTAAATGTTTTTAAATAAGAGGAAGCAATAAGATTCTAAAGG
CTTTTCTGTTTTAATTTTCATGCAATGGAAAACTGGTATTAAATATCTATTTAATTAGGA
GGAAACTACAATGCTGACTTTTGTCTGAATTATGTAGATAAGTGATTCATTTGAAACAAT
TATTTTGATAATTGTCAATTATCCATTTCATTTTAATGCATTTTTTATTCTTTTTTCAAA
AATAGCAACAATTACAACAGTTAAACCTTATAATGAATATGTTTCCTAAACCCTGTTCTA
CTttctggttccagatctgacaccaattacctttctgattttggacaaaccacttaatat
ttgtaacttacaattacttcaactgaataataaaagaattg

bedtools 를 이용하여 해당 영역에 N 처리 (masking) 하겠습니다.
output파일을 samtools로 다시 인덱스 지정 해주고 masking 되었는지 확인하였습니다.

 

command

bedtools maskfasta -fi hg19.fasta -bed chr20_masking.bed -fo hg19_chr20_masking.fa.out

 

[skkwon1048@server Test]$ bedtools maskfasta -fi hg19.fasta -bed chr20_masking.bed -fo hg19_chr20_masking.fa.out

[skkwon1048@server Test]$ samtools faidx hg19_chr20_masking.fa.out 
[skkwon1048@server Test]$ samtools faidx ./hg19_chr20_masking.fa.out chr20:10000000-10001000
>chr20:10000000-10001000
TNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN
NNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNNN


옵션 설명:
-soft : fasta sequence soft masking (소문자 염기 추가) (default : hard masking )
-mc : N 말고 다른 알파벳으로 masking

 

reference

https://bedtools.readthedocs.io/en/latest/content/tools/maskfasta.html

 

maskfasta — bedtools 2.30.0 documentation

maskfasta bedtools maskfasta masks sequences in a FASTA file based on intervals defined in a feature file. The headers in the input FASTA file must exactly match the chromosome column in the feature file. This may be useful for creating your own masked gen

bedtools.readthedocs.io

 

반응형