Biopython - Introdução
Biopython é o maior e mais popular pacote de bioinformática para Python. Ele contém vários submódulos diferentes para tarefas comuns de bioinformática. É desenvolvido por Chapman e Chang, principalmente escrito em Python. Ele também contém código C para otimizar a parte de computação complexa do software. Ele roda em Windows, Linux, Mac OS X, etc.
Basicamente, Biopython é uma coleção de módulos python que fornecem funções para lidar com operações de DNA, RNA e sequência de proteínas, como complementação reversa de uma sequência de DNA, encontrar motivos em sequências de proteínas, etc. como GenBank, SwissPort, FASTA, etc., bem como wrappers / interfaces para executar outros softwares / ferramentas de bioinformática populares como NCBI BLASTN, Entrez, etc., dentro do ambiente python. Tem projetos irmãos como BioPerl, BioJava e BioRuby.
Características
Biopython é portátil, claro e tem sintaxe fácil de aprender. Alguns dos principais recursos estão listados abaixo -
Interpretado, interativo e orientado a objetos.
Suporta formatos relacionados a FASTA, PDB, GenBank, Blast, SCOP, PubMed / Medline, ExPASy.
Opção para lidar com formatos de sequência.
Ferramentas para gerenciar estruturas de proteínas.
BioSQL - Conjunto padrão de tabelas SQL para armazenar sequências, além de recursos e anotações.
Acesso a serviços online e banco de dados, incluindo serviços NCBI (Blast, Entrez, PubMed) e serviços ExPASY (SwissProt, Prosite).
Acesso a serviços locais, incluindo Blast, Clustalw, EMBOSS.
Metas
O objetivo do Biopython é fornecer acesso simples, padrão e abrangente à bioinformática por meio da linguagem python. Os objetivos específicos do Biopython estão listados abaixo -
Fornecimento de acesso padronizado a recursos de bioinformática.
Módulos e scripts reutilizáveis de alta qualidade.
Manipulação rápida de array que pode ser usada em código de cluster, PDB, NaiveBayes e modelo Markov.
Análise de dados genômicos.
Vantagens
Biopython requer muito menos código e apresenta as seguintes vantagens -
Fornece tipo de dados microarray usado em clustering.
Lê e grava arquivos do tipo visualização em árvore.
Oferece suporte a dados de estrutura usados para análise, representação e análise de PDB.
Suporta dados de diário usados em aplicativos Medline.
Suporta banco de dados BioSQL, que é um banco de dados padrão amplamente usado entre todos os projetos de bioinformática.
Oferece suporte ao desenvolvimento de analisador, fornecendo módulos para analisar um arquivo de bioinformática em um objeto de registro específico de formato ou uma classe genérica de sequência mais recursos.
Documentação clara baseada no estilo de livro de receitas.
Exemplo de estudo de caso
Vamos verificar alguns dos casos de uso (genética populacional, estrutura de RNA, etc.) e tentar entender como Biopython desempenha um papel importante neste campo -
Genética Populacional
A genética populacional é o estudo da variação genética dentro de uma população e envolve o exame e a modelagem de mudanças nas frequências de genes e alelos em populações ao longo do espaço e do tempo.
Biopython fornece módulo Bio.PopGen para genética de populações. Este módulo contém todas as funções necessárias para reunir informações sobre a genética populacional clássica.
Estrutura de RNA
As três principais macromoléculas biológicas essenciais para nossa vida são o DNA, o RNA e a proteína. As proteínas são os cavalos de batalha da célula e desempenham um papel importante como enzimas. O DNA (ácido desoxirribonucléico) é considerado o “projeto” da célula. Ele carrega todas as informações genéticas necessárias para a célula crescer, absorver nutrientes e se propagar. O RNA (ácido ribonucléico) atua como “fotocópia de DNA” na célula.
Biopython fornece objetos Bio.Sequence que representam nucleotídeos, blocos de construção de DNA e RNA.