Universitat Internacional de Catalunya

Habilidades de Programación

Habilidades de Programación
4
14872
4
Segundo semestre
op
Lengua de impartición principal: inglés

Otras lenguas de impartición: catalán, castellano

Profesorado


Natàlia Padilla Sirera: npadilla@uic.es

Cristina Lidón Moyano: clidon@uic.es

Presentación

La programación de ordenadores es una realidad habitual para aquellas personas interesadas en el uso de las técnicas bioinformáticas en el entorno biomédico-clínico. Aunque en la actualidad hay múltiples lenguajes de programación, en bioinformática hay dos que destacan por su uso extendido y su flexibilidad para resolver los problemas del campo: Python y R. El objetivo de este asignatura es el de familiarizar al estudiante con los aspectos más esenciales de estos lenguajes, ilustrando su uso en problemas concretos.

Requisitos previos

Se recomienda haber cursado y superado:

-          Introducción a la bioinformática

-          Bioestadística

Objetivos

  • Aprender los fundamentos de los lenguajes Python y R e iniciarse en su programación.

Competencias/Resultados de aprendizaje de la titulación

BÁSICAS

CB1

 Que los estudiantes hayan demostrado poseer y comprender conocimientos en un área de estudio que parte de la base de la educación secundaria general, y se suele encontrar a un nivel que, si bien se apoya en libros de texto avanzados, incluye también algunos aspectos que implican conocimientos procedentes de la vanguardia de su campo de estudio

CB5

 Que los estudiantes hayan desarrollado aquellas habilidades de aprendizaje necesarias para emprender estudios posteriores con un alto grado de autonomía

 

GENERALES

CG7      Integrar los conceptos básicos relacionados con el campo de la biomedicina tanto a nivel teórico como experimental.

CG10    Diseñar, redactar y ejecutar proyectos relacionados con el área de las Ciencias Biomédicas

CG11    Reconocer conceptos básicos de diferentes ámbitos vinculados a las ciencias biomédicas.

 

 

ESPECÍFICAS:

CE7

Aplicar las herramientas estadísticas a estudios en Ciencias de la Salud.

CE19

Reconocer los principios de las ciencias biomédicas relacionadas con la salud y aprender a trabajar en cualquier ámbito de las Ciencias Biomédicas (empresa biomédica, laboratorios de bioinformática, laboratorios de investigación, empresa de análisis clínicos, etc

 

 

TRANSVERSALES

 

CT1

Desarrollar la capacidad de organización y planificación adecuadas al momento.

CT2

Desarrollar la capacidad para la resolución de problemas.

CT3

Desarrollar la capacidad de análisis y síntesis.

CT8

Razonar y evaluar las situaciones y resultados desde un punto de vista crítico y constructivo.

CT9

Tener la capacidad de desarrollar habilidades en las relaciones interpersonales.

CT10

Ser capaz de llevar a cabo un aprendizaje autónomo.

CT11

Aplicar los conocimientos teóricos a la práctica.

 

Resultados de aprendizaje de la asignatura

Como resultado de aprendizaje específico de este curso se contempla el siguiente:

-            El alumno conoce y aplica el lenguaje de programación Python y R.

Contenidos

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

Metodología y actividades formativas

Modalidad totalmente presencial en el aula



Casos clínicos o métodos del caso (MC): Planteamiento de una situación real o imaginaria. Los alumnos trabajan las preguntas formuladas en grupos reducidos o en interacción activa con el profesor y se discuten las respuestas. El profesor interviene activamente y si hace falta aporta nuevos conocimientos.

Educación virtual (EV): Material online que el alumno puede consultar desde cualquier ordenador, a cualquier hora y que contribuirá al autoaprendizaje de conceptos relacionados con la asignatura.

Sistemas y criterios de evaluación

Modalidad totalmente presencial en el aula



 

Alumnos en primera convocatoria:  

50% Python: Métodos del caso: 60 % + 40% Examen parcial de la asignatura*

50% R: Métodos del caso: 60 % + 40% Examen final de la asignatura*

*Es necesaria una nota mínima de 5 para hacer media

Participación en ES-Day: el alumnado que participe en todas las sesiones del Entrepreneurship & Social Day (E&S-Day), recibirá 0,5 puntos extra sobre la nota final.

Alumnos en segunda o posterior convocatoria: la nota de los métodos del caso se guardará y el examen final representará un 75% de la nota final. Los alumnos repetidores que deseen repetir el parcial en 3 o 5 convocatoria, podrán realizarlo comunicándolo previamente al profesor titular. En cualquier caso, se deberán presentar al menos a recuperar la parte de la asignatura que esté suspendida (R y/o Python).

Puntos generales a tener en cuenta sobre el sistema de evaluación:  

1)      Para poder hacer media, en el examen parcial y final se deberá obtener un 5 de nota mínima.

2)      Además de lo mencionado anteriormente, para aprobar la asignatura, la media de todas las calificaciones ha de ser 5 o superior.

3)      El carácter continuado de esta evaluación hace que no sea posible evaluar la asignatura si no se ha participado en un 75% de las horas.

4)      El uso indebido de aparatos electrónicos (como el registro y difusión tanto del alumnado como del profesorado durante las diferentes sesiones, así como el uso de estos aparatos con fines lúdicos y no educativos) puede comportar la expulsión de clase.

Bibliografía y 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