SlideShare a Scribd company logo
IPW2008 Perl e Bioinformatica G.M. Dall'Olio
Cosa é la bioinformatica? Scienza che studia come utilizzare la grande quantità di dati prodotti dalla ricerca scientifica. Nata nel 1957, quando Margaret Dayhoff compila un metodo per stabilire quanto due sequenze di proteine sono simili (matrici PAM). Approccio scientifico: formulazione di una ipotesi (e.g.: il genoma umano é più lungo di quello di topo), validazione, confronto.
Bioinformatica al giorno d'oggi Negli ultimi anni i costi per produrre grandi quantità di dati in esperimenti scientifici sono diminuiti enormemente. Per esempio è possibile sequenziare un intero genoma in poco tempo. I piccoli laboratori preferiscono utilizzare dati prodotti da centri più grandi e resi disponibili gratuitamente, e studiarli grazie al computer.
Bioinformatica – casi d'uso I Studiare i dati prodotti dal sequenziamento del genoma umano: trovare posizione di geni, confrontare con altri organismi; Catalogare tutte le proteine espresse nell'uomo, clusterizzarle e trovare elementi in comune; Prevedere la struttura di una proteina a partire dalla sequenza;  Rappresentare le reti di interazione tra proteine come grafi.
Bioinformatica – casi d'uso II Gestire la fase di produzione di dati, come assemblare i risultati di un esperimento e salvarli su computer; Supportare la ricerca classica, con database, applicazioni web, servizi; Tanto altro :)
Differenza tra programmazione di software e bioinformatica In bioinformatica, l'obiettivo non é creare una applicazione software da far utilizzare a terzi. Piuttosto bisogna scrivere diversi piccoli programmi che permettano di eseguire calcoli e capire come assemblarli. E' necessario un approccio più scientifico, facendo attenzione ai controlli e mettendo bene in chiaro quali sono le nostre ipotesi.
Esempio di esperimento bioinformatico Ipotesi : il genoma umano é più lungo di quello di topo. Assunzioni :  I genomi di entrambi gli organismi sono stati sequenziati con lo stesso livello di qualità; Per ogni genoma considero la lunghezza intera della sequenza eccetto alcune parti non sequenziabili (...) Le sequenze di riferimento sono quelle depositate nel database genbank sul server ncbi, release 41.
Esempio di esperimento bioinformatico Per dimostrare che il genoma umano é più lungo di quello di topo, procedo così: Scrivo un programma che scarichi le due sequenze dal database di riferimento; Ne scrivo un secondo che verifichi le sequenze scaricate ed elimini le parti che non voglio considerare; Scrivo un terzo programma che calcoli la lunghezza delle due sequenze e le confronti; Testo i vari script, e li unisco tramite Make o un tool simile.
Esempio di esperimento bioinformatico Contenuto della directory del nostro esperimento di bioinformatica: getSequencesFromNCBI.pl cleanSequences.pl compareSequenceLength.pl Makefile Readme.txt
Perl e bioinfo Perl è tra i linguaggi più utilizzati in bioinformatica. Viene insegnato nella maggior parte dei corsi e master. Si è diffuso quando alcuni gruppi dell'EBI (European Bioinformatics Institute) hanno cominciato a usarlo, e rilasciare codice sotto Gnu/GPL.
Vantaggi del perl in bioinformatica Perl permette di lavorare facilmente su file di testo è più pratico salvare la sequenza di un genoma in testo semplice piuttosto che su XML o un database Le espressioni regolari sono comode per identificare motivi e pattern su sequenze. e.g. trovare il punto di interazione tra due proteine e capire quanto questa sarà forte. Numerose librerie disponibili già su CPAN e BioPerl.
Svantaggi del perl in bioinformatica Meno facile da imparare del python Meno orientato ad oggetti di altri linguaggi Scienziati con teste molto dure Usato molto male
Problemi della bioinformatica Basicamente, il problema é che molti bioinformatici programmano avendo poche basi teoriche Si studia per 3 o 5 anni biologia, dopodiché con uno o due corsi ci si improvvisa programmatori Il perl é svantaggiato in questo contesto perché é più complesso da imparare rispetto ad altri linguaggi Molti usano il perl senza sapere usare funzioni, hash, moduli esterni, documentazione, moduli di testing
Altri problemi della bioinfo Mentalità 'Publish or Perish': una volta che una libreria viene pubblicata su rivista, non viene mantenuta. Non esiste una vera e propria cultura del software libero. Non sono definite delle pratiche di buona programmazione comuni.
Esempi: BioPerl BioPerl é un insieme di librerie per la bioinformatica rilasciate sotto Gnu/GPL Casi d'uso: convertire un file in un formato diverso, cercare un articolo, avviare un tool di allineamento su un database pubblico, calcolare proprietà di una sequenza, etc.. Esistono altri progetti simili (BioPython, BioJava, BioC, ...), ma BioPerl é il più completo e diffuso Purtroppo non tutti lo usano ('snobbato').
Esempi: Ensembl APIs Ensembl è un progetto nato per gestire le informazioni ricavate dal sequenziamento del genoma umano Fornisce informazioni come la posizione di geni e di trascritti, SNPs, regioni d'omologia. Adesso é stato allargato ad altre specie oltre all'uomo. Ensembl fornisce delle ottime API per estrarre e navigare sui dati annotati, in perl e java.
Esempi:
Futuro del Perl in bioinfo In alcuni campi ci si sta spostando dal lavoro su file di testo all'uso di database Come è perl per lavorare su database?  Antagonisti/Compagni del perl: R Python Java In ogni caso, è probabile che perl continui ad essere utilizzato a lungo, perché ci sono molte librerie e comunità disposte a mantenerle.
Errori comuni in bioinformatica

More Related Content

PPTX
Pasquale Saldarelli – La piattaforma genomica di sequenziamento massivo della...
PPTX
Maria Svelto – il Distretto H-BIO Puglia: sfide ed opportunità per la Bioinfo...
PDF
PPTX
Flavio Licciulli – Ricerca bioinformatica e sue applicazioni per l’identifica...
PPTX
Piero Larizza – “La Robotica nella Bioinformatica”
PPTX
Matteo ragni biologia
PPTX
Domenico Catalano – Bioinformatica applicata a dati di genomica e trascrittom...
Pasquale Saldarelli – La piattaforma genomica di sequenziamento massivo della...
Maria Svelto – il Distretto H-BIO Puglia: sfide ed opportunità per la Bioinfo...
Flavio Licciulli – Ricerca bioinformatica e sue applicazioni per l’identifica...
Piero Larizza – “La Robotica nella Bioinformatica”
Matteo ragni biologia
Domenico Catalano – Bioinformatica applicata a dati di genomica e trascrittom...

Similar to (draft) perl e bioinformatica - presentazione per ipw2008 (20)

PPTX
Applicazioni di chatGPT e altri LLMs per la ricerca di farmaci
PDF
Mhc Protocols 1st Edition James Robinson Steven G E Marsh Auth
PDF
Introduzione sulla system biology nel contesto delle biotecnologie moderne Ti...
PDF
Data hiding - metodologie e strumenti open source
PDF
Protoplast Technology Methods And Protocols 1st Edition Kan Wang
PDF
Le Basi di Python.pdf
PDF
Evento finale cluster RealTimeCheckIVGamma - Sequenziamento 16 S rDNA per l’i...
PDF
Data Hiding
PPT
Integrazione di ontologie su un sistema a regole: un caso di studio
PDF
Un simulatore in C++ basato su GEANT4 per lo studio di sensori nella Tomograf...
PDF
Debian Approch to Med
PDF
Lab psychopy
PDF
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
PDF
Biology Science for Life 5th Edition Belk Solutions Manual
PDF
Il futuro delle biotecnologie iacobelli 4-10-2013
PPT
Corso Python Django
PDF
Migliori LLM Open Source per uso commerciale!
ODP
Edubuntu - Il miglior Software per l'insegnamento è Opensource
ODP
OpenHardware : Arduino
PDF
Software bill of materials: strumenti e analisi di progetti open source dell’...
Applicazioni di chatGPT e altri LLMs per la ricerca di farmaci
Mhc Protocols 1st Edition James Robinson Steven G E Marsh Auth
Introduzione sulla system biology nel contesto delle biotecnologie moderne Ti...
Data hiding - metodologie e strumenti open source
Protoplast Technology Methods And Protocols 1st Edition Kan Wang
Le Basi di Python.pdf
Evento finale cluster RealTimeCheckIVGamma - Sequenziamento 16 S rDNA per l’i...
Data Hiding
Integrazione di ontologie su un sistema a regole: un caso di studio
Un simulatore in C++ basato su GEANT4 per lo studio di sensori nella Tomograf...
Debian Approch to Med
Lab psychopy
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Biology Science for Life 5th Edition Belk Solutions Manual
Il futuro delle biotecnologie iacobelli 4-10-2013
Corso Python Django
Migliori LLM Open Source per uso commerciale!
Edubuntu - Il miglior Software per l'insegnamento è Opensource
OpenHardware : Arduino
Software bill of materials: strumenti e analisi di progetti open source dell’...
Ad

More from Giovanni Marco Dall'Olio (20)

PDF
Fehrman Nat Gen 2014 - Journal Club
PDF
Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...
PDF
PDF
Version control
PDF
Linux intro 5 extra: awk
PDF
Linux intro 5 extra: makefiles
PDF
Linux intro 4 awk + makefile
PDF
Linux intro 3 grep + Unix piping
PDF
Linux intro 2 basic terminal
PDF
Linux intro 1 definitions
PDF
Wagner chapter 5
PDF
Wagner chapter 4
PDF
Wagner chapter 3
PDF
Wagner chapter 2
PDF
Wagner chapter 1
PDF
Hg for bioinformatics, second part
PDF
Hg version control bioinformaticians
PDF
The true story behind the annotation of a pathway
PDF
Plotting data with python and pylab
ODP
Makefiles Bioinfo
Fehrman Nat Gen 2014 - Journal Club
Thesis defence of Dall'Olio Giovanni Marco. Applications of network theory to...
Version control
Linux intro 5 extra: awk
Linux intro 5 extra: makefiles
Linux intro 4 awk + makefile
Linux intro 3 grep + Unix piping
Linux intro 2 basic terminal
Linux intro 1 definitions
Wagner chapter 5
Wagner chapter 4
Wagner chapter 3
Wagner chapter 2
Wagner chapter 1
Hg for bioinformatics, second part
Hg version control bioinformaticians
The true story behind the annotation of a pathway
Plotting data with python and pylab
Makefiles Bioinfo
Ad

(draft) perl e bioinformatica - presentazione per ipw2008

  • 1. IPW2008 Perl e Bioinformatica G.M. Dall'Olio
  • 2. Cosa é la bioinformatica? Scienza che studia come utilizzare la grande quantità di dati prodotti dalla ricerca scientifica. Nata nel 1957, quando Margaret Dayhoff compila un metodo per stabilire quanto due sequenze di proteine sono simili (matrici PAM). Approccio scientifico: formulazione di una ipotesi (e.g.: il genoma umano é più lungo di quello di topo), validazione, confronto.
  • 3. Bioinformatica al giorno d'oggi Negli ultimi anni i costi per produrre grandi quantità di dati in esperimenti scientifici sono diminuiti enormemente. Per esempio è possibile sequenziare un intero genoma in poco tempo. I piccoli laboratori preferiscono utilizzare dati prodotti da centri più grandi e resi disponibili gratuitamente, e studiarli grazie al computer.
  • 4. Bioinformatica – casi d'uso I Studiare i dati prodotti dal sequenziamento del genoma umano: trovare posizione di geni, confrontare con altri organismi; Catalogare tutte le proteine espresse nell'uomo, clusterizzarle e trovare elementi in comune; Prevedere la struttura di una proteina a partire dalla sequenza; Rappresentare le reti di interazione tra proteine come grafi.
  • 5. Bioinformatica – casi d'uso II Gestire la fase di produzione di dati, come assemblare i risultati di un esperimento e salvarli su computer; Supportare la ricerca classica, con database, applicazioni web, servizi; Tanto altro :)
  • 6. Differenza tra programmazione di software e bioinformatica In bioinformatica, l'obiettivo non é creare una applicazione software da far utilizzare a terzi. Piuttosto bisogna scrivere diversi piccoli programmi che permettano di eseguire calcoli e capire come assemblarli. E' necessario un approccio più scientifico, facendo attenzione ai controlli e mettendo bene in chiaro quali sono le nostre ipotesi.
  • 7. Esempio di esperimento bioinformatico Ipotesi : il genoma umano é più lungo di quello di topo. Assunzioni : I genomi di entrambi gli organismi sono stati sequenziati con lo stesso livello di qualità; Per ogni genoma considero la lunghezza intera della sequenza eccetto alcune parti non sequenziabili (...) Le sequenze di riferimento sono quelle depositate nel database genbank sul server ncbi, release 41.
  • 8. Esempio di esperimento bioinformatico Per dimostrare che il genoma umano é più lungo di quello di topo, procedo così: Scrivo un programma che scarichi le due sequenze dal database di riferimento; Ne scrivo un secondo che verifichi le sequenze scaricate ed elimini le parti che non voglio considerare; Scrivo un terzo programma che calcoli la lunghezza delle due sequenze e le confronti; Testo i vari script, e li unisco tramite Make o un tool simile.
  • 9. Esempio di esperimento bioinformatico Contenuto della directory del nostro esperimento di bioinformatica: getSequencesFromNCBI.pl cleanSequences.pl compareSequenceLength.pl Makefile Readme.txt
  • 10. Perl e bioinfo Perl è tra i linguaggi più utilizzati in bioinformatica. Viene insegnato nella maggior parte dei corsi e master. Si è diffuso quando alcuni gruppi dell'EBI (European Bioinformatics Institute) hanno cominciato a usarlo, e rilasciare codice sotto Gnu/GPL.
  • 11. Vantaggi del perl in bioinformatica Perl permette di lavorare facilmente su file di testo è più pratico salvare la sequenza di un genoma in testo semplice piuttosto che su XML o un database Le espressioni regolari sono comode per identificare motivi e pattern su sequenze. e.g. trovare il punto di interazione tra due proteine e capire quanto questa sarà forte. Numerose librerie disponibili già su CPAN e BioPerl.
  • 12. Svantaggi del perl in bioinformatica Meno facile da imparare del python Meno orientato ad oggetti di altri linguaggi Scienziati con teste molto dure Usato molto male
  • 13. Problemi della bioinformatica Basicamente, il problema é che molti bioinformatici programmano avendo poche basi teoriche Si studia per 3 o 5 anni biologia, dopodiché con uno o due corsi ci si improvvisa programmatori Il perl é svantaggiato in questo contesto perché é più complesso da imparare rispetto ad altri linguaggi Molti usano il perl senza sapere usare funzioni, hash, moduli esterni, documentazione, moduli di testing
  • 14. Altri problemi della bioinfo Mentalità 'Publish or Perish': una volta che una libreria viene pubblicata su rivista, non viene mantenuta. Non esiste una vera e propria cultura del software libero. Non sono definite delle pratiche di buona programmazione comuni.
  • 15. Esempi: BioPerl BioPerl é un insieme di librerie per la bioinformatica rilasciate sotto Gnu/GPL Casi d'uso: convertire un file in un formato diverso, cercare un articolo, avviare un tool di allineamento su un database pubblico, calcolare proprietà di una sequenza, etc.. Esistono altri progetti simili (BioPython, BioJava, BioC, ...), ma BioPerl é il più completo e diffuso Purtroppo non tutti lo usano ('snobbato').
  • 16. Esempi: Ensembl APIs Ensembl è un progetto nato per gestire le informazioni ricavate dal sequenziamento del genoma umano Fornisce informazioni come la posizione di geni e di trascritti, SNPs, regioni d'omologia. Adesso é stato allargato ad altre specie oltre all'uomo. Ensembl fornisce delle ottime API per estrarre e navigare sui dati annotati, in perl e java.
  • 18. Futuro del Perl in bioinfo In alcuni campi ci si sta spostando dal lavoro su file di testo all'uso di database Come è perl per lavorare su database? Antagonisti/Compagni del perl: R Python Java In ogni caso, è probabile che perl continui ad essere utilizzato a lungo, perché ci sono molte librerie e comunità disposte a mantenerle.
  • 19. Errori comuni in bioinformatica