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.