반응형
Genome으로부터 sequence 가져오기.
gtf, gff, bed format 등으로부터 sequence를 가져와야 할 때가 자주 생긴다.
julia에서 주의해야할 점은 start index가 0이 아니라 1이라는 것이다.
Plus strand일 경우 그냥 가져오면 되지만
Minus strand 일 때는 reverse complimentary한 sequence를 가져와야 한다.
comp = ['G' => 'C', 'T' => 'A', 'A' => 'T', 'C' => 'G', 'g' => 'c', 't' => 'a', 'a' => 't', 'c' => 'g']
if strand == '+'
sequence = reference[chromosome][startpos:endpos]
elseif strand == '-'
sequence = reverse(map(x -> comp[x] , reference[chromosome][startpos:endpos])
end
comp라는 dictionary를 만들어서 각각 대응되는 염기를 넣는다.
strand가 + 일 경우 genome sequence를 넣어둔 reference라는 dictionary에서 chromosome을 넣고 start와 end coordinate를 넣어주는 것으로 sequence를 가져오면 되지만, - 일 경우 +와 동일한 방법으로 가져온 sequence를 complimantary하게 바꾼 뒤 reverse함수를 사용해서 뒤집는다.
반응형
'Computer Science > julia' 카테고리의 다른 글
ArgParse 모듈 사용하기 (0) | 2017.08.31 |
---|---|
StatsBase 모듈 사용하기 (0) | 2017.08.24 |
Julia 설치 및 실행하기 (0) | 2017.08.16 |
string에 섞여있는 float 찾기 (0) | 2017.03.16 |
특정 확장자를 가진 파일을 리스트로 받기 (0) | 2016.12.18 |