
Programació en Bioinformàtica
Codi: 42401 Crèdits: 6| Titulació | Tipus | Curs |
|---|---|---|
| 4313473 Bioinformàtica / Bioinformatics | OB | 0 |
Professor/a de contacte
- Nom:
- Javier Panadero Martinez
- Correu electrònic:
- javier.panadero@uab.cat
Equip docent
- Javier Panadero Martinez
Idiomes dels grups
Podeu consultar aquesta informació al final del document.
Prerequisits
Per al desenvolupament general del curs, es recomana tenir un nivell B2 d'anglès o similar.
Per al mòdul de programació, és molt recomanable tenir nocions bàsiques de Linux com a usuari (conèixer les eines bàsiques d'edició d'arxius de texte i de gestió de carpetes i permissos)
Objectius
Els objectius generals d'aquest mòdul són l'aplicació de les eines i tècniques bàsiques per al desenvolupament en aquesta àrea. Es treballen les capacitats de resoldre reptes i adaptar-se a les tecnologies i paradigmes de la bioinformàtica.
Competències
- Dissenyar i aplicar la metodologia científica en la resolució de problemes.
- Identificar les necessitats bioinformàtiques dels centres de recerca i les empreses del sector de la biotecnologia i la biomedicina.
- Que els estudiants tinguin les habilitats d'aprenentatge que els permetin continuar estudiant, en gran manera, amb treball autònom a autodirigit.
- Tenir coneixements que aportin la base o l'oportunitat de ser originals en el desenvolupament o l'aplicació d'idees, sovint en un context de recerca.
- Treballar individualment i en equip en un context internacional i multidisciplinari.
- Utilitzar sistemes operatius, programes i eines d'ús comú en bioinformàtica, i fer servir plataformes de còmput d'altes prestacions, llenguatges de programació i anàlisis bioinformàtiques.
Resultats d'aprenentatge
- Dissenyar i aplicar la metodologia científica en la resolució de problemes.
- Dissenyar, analitzar i avaluar les prestacions d'infraestructures paral·leles i grans volums de dades.
- Gestionar plataformes paral·leles i bases de dades bioinformàtiques d'acord amb les necessitats existents.
- Identificar els avantatges i les limitacions de la bioinformàtica i la importància de l'aplicació de noves tecnologies computacionals en investigacions òmiques.
- Implementar algoritmes i tècniques de càlcul estadístic, per a la gestió de grans volums de dades.
- Iniciar-se en la creació, connexió, edició i consulta de bases de dades
- Que els estudiants tinguin les habilitats d'aprenentatge que els permetin continuar estudiant, en gran manera, amb treball autònom a autodirigit.
- Tenir coneixements que aportin la base o l'oportunitat de ser originals en el desenvolupament o l'aplicació d'idees, sovint en un context de recerca.
- Treballar individualment i en equip en un context internacional i multidisciplinari.
- Utilitzar els llenguatges de programació en bioinformàtica, R y Python.
Continguts
1. Linux (Comandes i shell scripting)
Comandes bàsiques, gestió de usuari, gestió de software i sistema d’arxius
Eines de processament de text i de processament de text
Redireccions, pipes, i filters
Programació de shell scripts amb Bash
2. Llenguatges de programació
Introducció a la programació amb Python dins Bioinformatics
Variables, expressions, tipus de dades, operadors, construccions programàtiques i contextos
Functions, modulis, i subroutines
Programació recursiva
Entrada/Sortida
Depuració de codi
Altres llenguatges de programació: R
3. Estructures de dades i processament de dades
Estructures de dades bàsiques (strings, lists, tuple, sets i dictionaries)
Estructures de dades niades i objectes
Arbres i grafs
Modelatge i representació de dades en bioinformática
Formats bàsics en bioinformática (FASTQ, SAM, VCF)
Expressions regulars
4. Algorithms in bioinformatics
Introducció a la complexitat algorítmica
Algorismes "Divide and conquer"
Enumeració combinatòria i backtracking
Programació dinàmica
5. Eines i librerias en bioinformática
Eines per a la visualització de dades
Introducció a Biopython
Introducció a NumPy i Pandas
Activitats formatives i Metodologia
| Títol | Hores | ECTS | Resultats d'aprenentatge |
|---|---|---|---|
| Tipus: Dirigides | |||
| Solució de problemes a l'aula | 14 | 0,56 | 1, 8, 7, 5 |
| Treball realitzat a l'aula | 20 | 0,8 | 1, 2, 3, 8, 7, 5 |
| Treball realitzat en el laboratori | 12 | 0,48 | 1, 4, 3, 8, 5, 9 |
| Tipus: Supervisades | |||
| Treball realitzat al laboratori a partir de les lectures recomenades | 15 | 0,6 | 1, 4, 8, 7, 9 |
| Tipus: Autònomes | |||
| Treball realitzat de forma setmanal sobre els entregables i materials proporcionats | 83 | 3,32 | 1, 2, 7, 5, 9 |
La metodologia combinará treball a l'aula, solució de problemes supervisada a classe, treball no supervisat en el laboratori i treball a realitzar de forma individual a partir de les lectures recomanades i entregues a realitzar. S'utilitzarà una plataforma virtual per a l'entrega dels informes dels treballs.
Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.
Avaluació
Activitats d'avaluació continuada
| Títol | Pes | Hores | ECTS | Resultats d'aprenentatge |
|---|---|---|---|---|
| Avaluació del treball realitzat per l'alumnat durant el mòdul | 10% | 1 | 0,04 | 1, 4, 7, 5, 9 |
| Examens individuals teòrics i pràctics | 50% | 2 | 0,08 | 1, 2, 3, 8, 7, 10 |
| Exàmen final | 30% | 1 | 0,04 | 1, 8, 7 |
| Treball al laboratori, individual i en grup | 10% | 2 | 0,08 | 1, 2, 4, 6, 3, 7, 5, 9 |
La metodologia combinarà treball a classe, solució de problemes a classe, treball autònom en el laboratori i fora del laboratori. S'utilitzaran les plataformes virtuals pel seguiment del curs. Cap de les activitats d’avaluació individuals representarà més del 50% de la nota final.
Examen de recuperació
Per poder participar en el procés de recuperació, l'alumnat haurà d’haver participat prèviament en com a mínim l'equivalent a dos terços de la nota final del mòdul en activitats d'avaluació. El professorat informarà dels procediments i terminis per al procés de recuperació. Cal notar que les activitats realitzades dins de classe de forma contínua no poden recuperar-se.
No avaluable
L'alumnat serà qualificat com a "No avaluable" quan el pes de l'avaluació en què ha participat sigui inferior a l’equivalent al 67% de la nota final del mòdul.
Aquesta assignatura/mòdul no preveu el sistema d’avaluació única.
Bibliografia
- Rajkumar Buyya, “High Performance Cluster Computing: Programming and Applications”, PH, 1999.
- Bell, Charles; Kindahl, Mats; Thalmann, Lars. “MySQL High Availability”. O’Reilly, 2010.
- Benson, D. A., Karsch-Mizrachi, I., Lipman, D. J., Ostell, J., Rapp, B. A. & Wheeler, D. L. (2002).
- GenBank. Nucl. Acids Res., 30(1):17-20. URL http://nar.oupjournals.org/cgi/content/abstract/30/1/17.
- Berman, H. M., Westbrook, J., Feng, Z., Gilliland, G., Bhat, T. N., Weissig, H., Shindyalov, I. N. & Bourne, P. E. (2000).The Protein Data Bank. Nucleic Acids Res., 28(1):235-242.
- Bessant, C., Shadford, I., Oakley, D. "Building Bioinformatics Solutions with Perl, R and MySQL", Oxford University Press, 2009
- Boeckmann, B., Bairoch, A., Apweiler, R., Blatter, M.-C., Estreicher, A., Gasteiger, E., Martin, M. J., Michoud, K., O'Donovan, C., Phan, I., Pilbout, S. & Schneider, M. .The SWISS-PROT protein knowledgebase and its supplement TrEMBL in 2003. Nucleic Acids Res., 31(1):365-370.
- Christiansen, P., Wall, L., Orwant, J., "Programming Perl". 4th Edition, O'Reilly, 2012
- Mäkinen et al., Genome-Scale Algorithm Design: Biological Sequence Analysis in the Era of High-Throughput Sequencing. Cambridge Univ. Press, 2015.
- Matloff, N., "The Art of R Programming". No Starch Press Inc., 2011
- Lutz, M., "Learning Python", O'Reilly, 5th edition, 2013
- Siever, E., Figgins, S., "Linux in a nutshell" O'Reilly 2009.
- Sobell, M., "A Practical Guide to Linux. Commands, editors and shell programming". Prentice Hall, 2009.
- Tindall, James., Begining Perl for Bioinformatics. O´Reilly 2012.
Webs de referència:
- http://mscbioinformatics.uab.cat
- https://cv.uab.cat
Recursos digitals a la biblioteca UAB:
- http://www.uab.cat/biblioteques/trobador
- http://pagines.uab.cat/bctdigital/
Programari
Linux (Ubuntu, Bash, linux-tools, etc)
Python 2.7/3.x
Jupyter Notebook / PyCharm
R/RStudio
Matplotlib/Seaborn
Numpy/Pandas
Llista d'idiomes
| Nom | Grup | Idioma | Semestre | Torn |
|---|---|---|---|---|
| (PLABm) Pràctiques de laboratori (màster) | 1 | Anglès | primer quadrimestre | matí-mixt |
| (TEm) Teoria (màster) | 1 | Anglès | primer quadrimestre | matí-mixt |