반응형

SyMap 설치 및 실행하기




SyMap은 university of arizona의 arizona genomics computational lab에서 개발한 프로그램으로


두 개 이상의 genome간의 synteny 분석을 하는데 사용되는 tool이다.


홈페이지 : http://www.agcol.arizona.edu/software/symap/index.html


Soderlund et al., 2006, SyMAP: A system for discovering and viewing syntenic regions of FPC maps, Genome Res. 16:1159-1168.

Soderlund et al., 2011, SyMAP v3.4: a turnkey synteny system with application to plant genomes, Nucleic Acids Res. 39(10):e68.



대부분의 synteny alignment 프로그램은 2개 이상의 genome을 지원하지 않는다. 


SyMap은 아래와 같이 Rice의 Chr1을 기준으로 양 옆으로  genome을 놓고 alignment 결과를 비교할 수 있다.


하지만 Chromosome 하나씩 골라서 비교를 하고 있기 때문에 genome 전체적인 synteny map을 보고싶다면 circos plot을 그리는 것을 추천한다.





circos plot으로 그리면 아래와 같이 나온다. 



3D version으로 여러개의 chromosome을 비교할 수도 있지만 아래의 결과는 서버 내에서 graphical support가 있어야 그릴 수 있다. (VGA 카드)




설치 및 실행 방법은


실행은 GUI를 쓰고 있기 때문에 DISPLAY가 필요하다.


terminal 프로그램을 통해서 리눅스 서버에서 작업을 하고 있다면 X11 DISPLAY가 필요하다고 나올 것이다.


xming 프로그램을 추천한다.


xming을 설치하고 실행한 후 다시 symap을 실행하면 열린다.



symap -20480N -no3d -p 16



으로 실행하면 20G의 메모리를 사용하며 CPU는 16개를 사용하고 3D plot은 찍지 않겠다는 의미로 실행이 된다.


메모리 디폴트 값이 매우 적기 때문에 large genome을 사용하고있다면 필히 메모리를 늘려야 하며 3d 는 서버에 VGA카드가 없으면 해당 옵션을 넣어주지 않으면 프로그램 실행 도중 에러가 날 수 있다. CPU는 프로그램 내에서도 바꿀 수 있기 때문에 넣지 않아도 무관하다.




실행이 정상적으로 되면 위와 같은 화면이 나온다.


여기서 팁을 주자면 모니터 좌측 상단에 실행이되며 이동이 불가능한 상태로 켜지는데 마우스를 창 가장 우측이나 하단에 놓고 사이즈를 조절하면 




위와같이 최대화가 보이도록 조절 할 수 있게 된다!


Project로 각각의 genome과 annotation을 넣어서 Project끼리 비교를 하게 되는데 /PATH/TO/INSTALL/SYMAP/data/pseudo/ 안에 폴더를 생성하면 uncategorized 위치에 생성한 폴더 명과 일치하는 project가 생긴다. 


Project를 로딩 후 각각 genome fasta 파일과 annotation 파일의 경로를 넣은 뒤 loading하면 alignment 준비는 끝난다.


Alignment는 전체 genome을 쪼개서 주어진 CPU를 사용하여 진행하는데 테스트로 한 번 돌리면 포유동물 2.5Gb가 30개로 쪼개진다. CPU를 3, 5, 6개로 주면 시간을 최적화 할 수 있다.



Align된 결과는 data/pseudo_pseudo/ 폴더 안에서 찾을 수 있다. block이나 anchor 파일을 찾으면 block단위로 찾을 수 있다.

반응형

'bioinformatics' 카테고리의 다른 글

Synteny Circos plot 그리기  (0) 2017.08.30
Arrow/Quiver 설치 및 사용하기  (0) 2017.08.24
GMAP 설치 및 실행하기  (0) 2017.08.22
AGOUTI 설치 및 실행하기  (0) 2017.08.21
Augustus 설치 및 실행하기  (0) 2017.08.16
반응형

GMAP 설치 및 실행하기




GMAP: a genomic mapping and alignment program for mRNA and EST sequences

논문 https://doi.org/10.1093/bioinformatics/bti310



2005년 bioinformatics에 나온 논문으로 mRNA나 EST sequence를 genome에 alignment해주는 프로그램 이다.


꾸준히 업데이트 되는 중 


다운로드는 http://research-pub.gene.com/gmap/



최신 버전을 다운로드 받은 후


tar -zxf http://research-pub.gene.com/gmap/src/gmap-gsnap-*.tar.gz

./configure --prefix=/PATH/TO/INSTALL/GMAP

make && make install


gmap을 사용하기 위해서는 먼저 gmap_build를 해야함. 기타 alignment프로그램과 마찬가지로 indexing 작업이 선행되어야 한다.


gmap_build -d genomename genome.fasta


indexing이 끝나면 파일은 gmap/share/폴더로 들어간다. 다른 폴더로 옮기지 않으면 밑에 gmap 실행에서 -D를 바꿀 필요는 없다.


gmap -D PATH/TO/GENOME/DIRECTORY -d genomename -t threads -f output_file_format genome.fasta


-d 에는 위에서 genome build할 때 쓴 genomename을 쓰면 된다. 이후 parameter는 직접 옵션을 보고 넣으면 된다.


가능한 genomename을 보고 싶으면 -d 뒤에 ? 를 넣어서 실행하면 가능한 값을 보여준다.








반응형

'bioinformatics' 카테고리의 다른 글

Arrow/Quiver 설치 및 사용하기  (0) 2017.08.24
SyMap 설치 및 실행하기  (0) 2017.08.23
AGOUTI 설치 및 실행하기  (0) 2017.08.21
Augustus 설치 및 실행하기  (0) 2017.08.16
HMMER 설치 및 실행하기  (0) 2017.08.16
반응형

AGOUTI 설치 및 실행하기




AGOUTI: improving genome assembly and annotation using transcriptome data 


https://doi.org/10.1186/s13742-016-0136-3



transcriptome data로 genome assembly와 gene annotation을 ipmorving 시키는 프로그램 이다.


RNAPATH 라는 유사 프로그램이 2010년 genome research에 있다.


RNAPATH와의 가장 큰 차이는 denoise 방식을 거친다는 것이다.


Python 2.7+ 버전에서 실행 가능 하다.


git clone https://github.com/svm-zhang/AGOUTI.git


폴더 안에 agouti.py 스크립트가 있다.



python agouti.py scaffold -assembly FILE -bam FILE -gff FILE


input file은

1. genome (fasta)

2. paired-end RNA-seq mapping file (bam)

3. annotation (gff)




반응형

'bioinformatics' 카테고리의 다른 글

SyMap 설치 및 실행하기  (0) 2017.08.23
GMAP 설치 및 실행하기  (0) 2017.08.22
Augustus 설치 및 실행하기  (0) 2017.08.16
HMMER 설치 및 실행하기  (0) 2017.08.16
NCBI BLAST+ 설치 및 실행하기  (0) 2017.08.16
반응형

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함수를 사용해서 뒤집는다.




반응형
반응형

Julia 설치 및 실행하기




Julia. 아직 배우는 중이라 어떤 부분에서 장점이 있는지 파악하는 중이다.


Python과 C의 장점만을 가져와서 만드려고 했고 계산과학쪽에서 다루기 위하여 만들어졌다.


적어도 Python 보다는 배우기가 어렵다. but, 파이썬이 지나치게 쉬운거지 Julia가 어려워서는 아니다.



설치를 위해 홈페이지 https://julialang.org/ 에서 최신버전 linux binary 파일을 다운로드 한다. 아직 개발 -ing 중이기 때문에 버전이 1 이상으로 올라가지 않았으며 약 6개월 주기로 버전이 업데이트 되는듯 하다.


wget https://julialang-s3.julialang.org/bin/linux/x64/0.6/julia-0.6.0-linux-x86_64.tar.gz


압축을 풀고 나면 bin 폴더 안에 julia 실행 파일이 있다.



julia는 module을 설치할 때 Pkg.add("MODULE") 으로 설치할 수 있으며 $HOME/.julia/ver/MODULE 로 설치된다.


Julia에서의 장점은 module을 각자 개별 설치가 가능하다는 것이다. python 같은 경우 내 local 안에 python을 설치한 것이 아니라면 내가 module을 설치할 수 없다. but, julia는 그냥 설치하면 된다. 


내가 만든 프로그램을 남이 설치할 때 편하다. module이 있는지 체크하고 없다면 그냥 Pkg.add(MODULE) 되도록 코드를 짜면 된다.



나중에 따로 정리하겠지만 plotting 하는 모듈들을 테스트 해보고 있다. Python을 쓸 때는 rpy를 써야 했고 개인적으로 안익숙해져서 R과 Python을 번갈아 사용하면서 plotting을 하는 귀찮음이 있었는데 julia는 쉽게 할 수 있을 것으로 보인다.

반응형

+ Recent posts