Bio python

2,195 views

Published on

Presentation in PUG-PE on 11/06

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
2,195
On SlideShare
0
From Embeds
0
Number of Embeds
698
Actions
Shares
0
Downloads
21
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Bio python

  1. 1. Péricles Mirandapericlesmiranda@gmail.com
  2. 2. Quem sou eu?• Engenheiro da Computação - UPE• Mestrando em CC – UFPE• Interesse em Web, móvel e IA• pbcm.wordpress.com Péricles Miranda periclesmiranda@gmail.com
  3. 3. Importância biológica• Medicina {Diagnóstico e tratamento}• Farmácia {desenvolvimento de novos fármacos}• Agricultura {aumento da qualidade e produtividade dos alimentos} Péricles Miranda periclesmiranda@gmail.com
  4. 4. Importância biológica• Genômica – Análise, edição e manipulação• Proteômica
  5. 5. Problemas na Biologia?• A biologia possui muitos problemas: – Comparação de sequências; – Mapemento de sequências; – Identificação de regiões conservadas; – Identificação de novas espécies; – Análise de doenças. Péricles Miranda periclesmiranda@gmail.com
  6. 6. Computação solucionando problemas Péricles Miranda periclesmiranda@gmail.com
  7. 7. Soluções• Bioinformática: – Desenvolvimento de novos algoritmos e técnicas estatísticas para encontrar relacionamentos entre atributos em grandes conjuntos de dados; – Aplicação de ferramentas {implementam AM} de computação e análise para captura e interpretação de dados biológicos; – Desenvolvimento e implementação de ferramentas que possibilitem o gerenciamento e acesso eficientes de vários tipos de informação. Péricles Miranda periclesmiranda@gmail.com
  8. 8. Soluções• BLAST – Ferramenta de comparação de sequências ; – Gera relatórios textuais e gráficos; – Integrado com vários repositórios; – Documentação que tende à completude; – Disponibiliza API. Péricles Miranda periclesmiranda@gmail.com
  9. 9. SoluçõesBiologia Python BioPython Péricles Miranda periclesmiranda@gmail.com
  10. 10. BioPython• É um conjunto de ferramentas disponíveis para computação biológica;• Agrega bibliotecas e aplicações que satisfazem as necessidades da bioinformática;• O código fonte está disponível. Péricles Miranda periclesmiranda@gmail.com
  11. 11. BioPython• Converte arquivos em formatos da bioinformática para objetos do tipo dicionário: – Blast – FASTA – GenBank – PubMed e Medline – UniGene – SwissProt• Interfaces com os programas mais usados na bioinformática: – NCBI – Programa de alinhamento Clustalw – Ferramentas de linha de comando EMBOSS Péricles Miranda periclesmiranda@gmail.com
  12. 12. BioPython• A classe Sequence lida com sequências e suas características;• Ferramentas que operam sobre sequências: tradução, transcrição e cálculo de pesos;• Çlassificadores usando k-NN, Naive Bayes ou SVM;• Geração de alinhamentos, e definição de matrizes de pesos;• Programas baseados em Interface gráfica;• Integração com o BioSQL. Péricles Miranda periclesmiranda@gmail.com
  13. 13. Na Prática>>> from Bio.Seq import Seq>>> my_seq = Seq("AGTACACTGGT")>>> my_seqSeq(AGTACACTGGT, Alphabet())>>> print my_seqAGTACACTGGT Péricles Miranda periclesmiranda@gmail.com
  14. 14. Na Prática>>> seq1 = Seq(AGTACACTGGT, Alphabet())>>> seq1.complement()Seq(TCATGTGACCA,Alphabet())>>> seq1.reverse_complement()Seq(ACCAGTGTACT, Alphabet())>>> str(seq1)AGTACACTGGT Péricles Miranda periclesmiranda@gmail.com
  15. 15. Na Prática>>> from Bio.Seq import Seq>>> from Bio.Alphabet import IUPAC>>> my_prot = Seq("AGUACACUGGU", IUPAC.protein)>>> my_protSeq(AGUACACUGGU, IUPACProtein())>>> my_prot.alphabetIUPACProtein() Péricles Miranda periclesmiranda@gmail.com
  16. 16. Na Práticafrom Bio import SeqIOfor seq_record in SeqIO.parse("ls_orchid.fasta","fasta"): print seq_record.id print repr(seq_record.seq) print len(seq_record)Saída:gi|2765658|emb|Z78533.1|CIZ78533Seq(CGTAACAAGGTTTCCGTAGGTGCGTGG...CGC, SingleLetterAlphabet())740...gi|2765564|emb|Z78439.1|PBZ78439Seq(CATTGTTGAGATCACATAATAATTGATCT...GCC, SingleLetterAlphabet())592 Péricles Miranda periclesmiranda@gmail.com
  17. 17. Na Prática>>> from Bio import SeqIO>>> record = SeqIO.read("NC_005816.gb", "genbank")>>> recordSeqRecord(seq=Seq(TGT...CTGTAGA, IUPACDNA()), id=NC_005816.1, name=NC_005816, description=Microtus str. 91001 plasmid pPCP1, dbxrefs=[Project:10638]) Péricles Miranda periclesmiranda@gmail.com
  18. 18. Na Prática>>> coding_dnaSeq(ATGGCCATTGG, IUPACUnambiguousDNA())>>> messenger_rna = coding_dna.transcribe()>>> messenger_rnaSeq(AUGGCCAUUG, IUPACUnambiguousRNA()) Péricles Miranda periclesmiranda@gmail.com
  19. 19. Na Prática>>> messenger_rnaSeq("AUGGCCAUUG", IUPAC.unambiguous_rna)>>> messenger_rna.translate()Seq(MAIVMGR*KGAR*, HasStopCodon(IUPACProtein(), *)) Péricles Miranda periclesmiranda@gmail.com
  20. 20. Na Prática• Existe uma série de algoritmos biológicos;• A ideia não é que o usuário os reimplemente;• Existem programas, acessíveis ao BioPython, que realiza o trabalho por você.>>> import Bio.Align.Applications>>> dir(Bio.Align.Applications)...[ClustalwCommandline, DialignCommandline, MafftCommandline, MuscleCommandline, PrankCommandline, ProbconsCommandline, TCoffeeCommandline ...] Péricles Miranda periclesmiranda@gmail.com
  21. 21. Na PráticaUsando o programa para alinhamento:>>> from Bio.Align.Applications import ClustalwCommandline>>> cline = ClustalwCommandline("clustalw2", infile="opuntia.fasta") Péricles Miranda periclesmiranda@gmail.com
  22. 22. Na PráticaAlinhamento no BLAST:>>> from Bio.Blast import NCBIWWW>>> fasta_string = open("m_cold.fasta").read()>>> result_handle = NCBIWWW.qblast("blastn", "nr", fasta_string)>>> from Bio.Blast.Applications import NcbiblastxCommandline>>> blastx_cline = NcbiblastxCommandline(query="opuntia.fasta",db="nr", evalue=0.001, ... outfmt=5, out="opuntia.xml") Péricles Miranda periclesmiranda@gmail.com
  23. 23. Na Prática• Buscando o lineage do organismo:>>> from Bio import Entrez>>> handle = Entrez.esearch(db="Taxonomy", term="Cypripedioideae")>>> records[0].keys() [uLineage, uDivision, uParentTaxId, uPubDate, uLineageEx, uCreateDate, uTaxId, uRank, uGeneticCode, uScientificName, uMitoGeneticCode, uUpdateDate]>>> records[0]["Lineage"] cellular organisms; Eukaryota; Viridiplantae; Streptophyta; Streptophytina; Embryophyta; Tracheophyta; Euphyllophyta; Spermatophyta; Magnoliophyta; Liliopsida; Asparagales; Orchidaceae Péricles Miranda periclesmiranda@gmail.com
  24. 24. Na Prática• Suporte 3D;• PyMol. Péricles Miranda periclesmiranda@gmail.com
  25. 25. Material• http://biopython.org/ – Tutorial – Downloads – Samples – Fóruns – Documentação – Repositório no Github
  26. 26. Péricles Mirandapericlesmiranda@gmail.com

×