Universitat Internacional de Catalunya
Habilitats de Programació
Altres llengües d'impartició: català, castellà
Professorat
Natàlia Padilla Sirera: npadilla@uic.es
Cristina Lidón Moyano: clidon@uic.es
Presentació
La programació d'ordinadors és una realitat habitual per a aquelles persones interessades en l'ús de les tècniques bioinformàtiques en l'entorn biomèdic-clínic. Encara que en l'actualitat hi ha múltiples llenguatges de programació, en bioinformàtica hi ha dues que destaquen pel seu ús estès i la seva flexibilitat per a resoldre els problemes del camp: Python i R. L'objectiu d'aquest assignatura és el de familiaritzar a l'estudiant amb els aspectes més essencials d'aquests llenguatges, il·lustrant el seu ús en problemes concrets.
Requisits previs
Es recomana haver cursat i superat:
- Introducció a la bioinformàtica
- Bioestadística
Objectius
Aprendre els fonaments dels llenguatges Python i R i iniciar-se en la seva programació.
Competències/Resultats d’aprenentatge de la titulació
BÀSIQUES
CB1 |
Que els estudiants hagin demostrat posseir i comprendre coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es recolza en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda del seu camp d'estudi |
CB5 |
Que els estudiants hagin desenvolupat aquelles habilitats d'aprenentatge necessàries per a emprendre estudis posteriors amb un alt grau d'autonomia |
Resultats d’aprenentatge de l’assignatura
Com a resultat d'aprenentatge específic d'aquest curs es contempla el següent:
- L'alumne coneix i aplica el llenguatge de programació Python i R.
Continguts
1. General concepts in programming: identifying the key steps in solving a problem
2.- Python programming fundamentals
2.1 Variables and data types: strings, numbers, and booleans
2.2 Conditions and loops: how to control the execution of a program
2.3 Lists: storing heterogeneous data
2.4 Dictionaries. A fast, direct form of accessing data: key-value pairs
2.5 Functions. Modules and Packages
2.6 Objects: a way to keep data and methods tidy
2.7 Testing: to keep your code clean and reliable
3.- R programming fundamentals
3.1 Introduction to basics: Calculations; Data types in R; Read datasets; Statistical programing review; Storing datasets; Linking to other computer languages
3.2. R Objects: Vectors, matrices, Arrays, Lists, Data frames; Logical operations; Storing heterogeneous data
3.2 Coding basics: Loops and functions
3.3 Transformations: apply, lapply, sapply, tapply; Relational Data: merge, dplyr
3.4 Tables and visualization: ggplot
3.5 Bioinformatic tools: Tydiverse, R Markdown, Bioconductor
Metodologia i activitats formatives
Modalitat totalment presencial a l'aula
Casos clínics o mètodes del cas (MC): Plantejament d'una situació real o imaginària. Els alumnes treballen les preguntes formulades en grups reduïts o en interacció activa amb el professor i es discuteixen les respostes. El professor intervé activament i si fa falta aporta nous coneixements.
Educació virtual (EV): Material en línia que l'alumne pot consultar des de qualsevol ordinador, a qualsevol hora i que contribuirà a l'autoaprenentatge de conceptes relacionats amb l'assignatura.
Sistemes i criteris d'avaluació
Modalitat totalment presencial a l'aula
Alumnes en primera convocatòria:
50% Python: Mètodes del cas: 60% + 40% Examen parcial de l'assignatura*
50% R: Mètodes del cas: 60% + 40% Examen final de l'assignatura*
És necessària una nota mínima de 5 per a fer mitja
Participació en ES-*Day: l'alumnat que participi en totes les sessions del Entrepreneurship & Social Day (E&S-Day), rebrà 0,5 punts extra sobre la nota final.
Alumnes en segona o posterior convocatòria: la nota dels mètodes del cas es guardarà i l'examen final representarà un 75% de la nota final. Els alumnes repetidors que desitgin repetir el parcial en 3 o 5 convocatòria, podran realitzar-ho comunicant-ho prèviament al professor titular. En qualsevol cas, s'hauran de presentar almenys a recuperar la part de l'assignatura que estigui suspesa (R i/o Python).
Punts generals a tenir en compte sobre el sistema d'avaluació:
1) Per a poder fer mitjana, en l'examen parcial i final s'haurà d'obtenir un 5 de nota mínima.
2) A més de l'esmentat anteriorment, per a aprovar l'assignatura, la mitjana de totes les qualificacions ha de ser 5 o superior.
3) El caràcter continuat d'aquesta avaluació fa que no sigui possible avaluar l'assignatura si no s'ha participat en un 75% de les hores.
4) L'ús indegut d'aparells electrònics (com el registre i difusió tant de l'alumnat com del professorat durant les diferents sessions, així com l'ús d'aquests aparells amb finalitats lúdics i no educatius) pot comportar l'expulsió de classe.
Bibliografia i recursos
Python Crash Course: A Hands-On, Project-Based Introduction to Programming de Eric Matthes
Hands-On Programming with R de Garett Grolemund
The R Book de Michael J. Crawley
The Art of R Programming de Norman Matloff
Practical Data Science with R de Nina Zumel y John Mount