Taverna

Biopipe beta 경진대회 3단계 문제 풀이

hongiiv 2007. 8. 22. 18:35
반응형
1,2 단계는 그럭저럭 해볼만 하다. 하지만 3단계는 ㅋㅋ

3단계 문제는 Blast의 결과 정확히 말하자면 blastp의 결과물을 가지고 유용한 정보 Pathway, PPI정보등을 찾는것이다. 이건 무한한 상상력을 발휘하면 되겠다.

그럼 이제부터 풀어보도록하자.

우선 blast 결과물은 어떠한 DB를 대상으로 했는가가 중요하다. Pathway 정보는 KEGG를 통해서 알수 있는데 Blast의 결과에 나오는 ID와 KEGG에서 사용하는 ID가 서로 상이하기 때문에 이를 KEGG ID로 변환하는 과정이 필요로 한다. 이것은 KEGG의 bconv라는 모듈을 통해서 가능하다. NCBI GI의 경우 ncbi-gi:번호 형식으로 bconv를 수행하면 ncbi-gi에 해당하는 KEGG ID를 반환한다.
External database  Database prefix
----------------- ---------------
NCBI GI ncbi-gi:
NCBI GeneID ncbi-geneid:
GenBank genbank:
UniGene unigene:
UniProt uniprot:
OMIM omim:
각각의 BLAST의 결과에 맞도록 prefix를 지정해서 KEGG ID를 얻어서 KEGG를 통해 pathway정보를 get하면 된다. 나는 SWISS Prot를 DB를 가지고 Blast를 수행했기 때문에 UniProt을 선택해서 사용했다.

http://phoebus.cs.man.ac.uk:1977/axis/services 에서 제공하는 blastsimplifier를 통해 Blast 결과 파일을 파싱해서 UniProt ID만을 추출이 가능하다. 다음 그림은 lastsimplifier를 통해 Blast 결과에서 Gene ID만을 추출한것이다.

16

추출된 ID를 uniprot: 접두사를 붙여서 bconv를 수행한다. 접두사를 붙이는 BeanShell 스크립트는 다음과 같이 모양이 되겠다.

==========================================================
String[] split = input.split("\n");
Vector nonEmpty = new Vector();

for (int i = 0; i < split.length; i++)
{       
    String trimmed = split[i].trim();
    nonEmpty.add(trimmed);   
}

String output = "";

for (int i = 0; i < nonEmpty.size(); i++)
{
    output = output + "uniprot:" + (String) (nonEmpty.elementAt(i) + "\n");
}
==========================================================

이렇게 해서 얻어진 Blast 결과에 대한 KEGG ID를 get_pathways_by_genes를 통해 돌리면 해당하는 Pathway 정보를 얻을 수 있다. 이렇게 얻어진 Pathway를 그림 파일로 얻기 위해서는 color_pathway_by_elements를 통해 pathway파일의 URL을 얻은 후 Local Services의 net에 있는 Get image from URL을 통해 얻으면 다음 그림과 같이 멋지게 Taverna에서 Pathway를 볼수 있다.

그런데 여기서 Blast의 결과에 대한 KEGG ID가 모두 Pathway 정보를 가지고 있는 것은 아니다, KEGG에서는 꾸준히 Pathway정보를 넣고 있는 중이기 때문에 혹 저처럼 get_pathways_by_genes을 수행했는데 결과가 없어서 뭐야 이거 안되는건가 하고 하루를 낭비하지 말길... pathway 정보가 없는 것도 있으니 테스트할때 주의해야겠다. 괜히 나는 pathway 정보가 없는 KEGG ID가지고 하루종일 결과가 안나온다고 씨름을 했으니.. ^^;;

각각의 그림은 bconv의 결과로 얻어진 KEGG ID, bconv에서 KEGG ID만을 추출, get_pathways_by_genes의 결과인 Pahtway와 Pathway 그림파일이다.

11

12

13

14

지금까지의 문제 풀이는 Biopipe가 아닌 Taverna에서 이루어졌다. Biopipe에서도 수월하게 진행될 수 있는지 내일 한번 해봐야겠다.


반응형