Materia

Contenido de XSL

Programación Científica en Python

Datos generales de la materia

Modalidad
Presencial
Idioma
Castellano

Descripción y contextualización de la asignatura

La asignatura de Programación Científica en Python sienta las bases para cursar otras materias de este máster en las que la programación científica y la visualización y análisis de datos juegan un papel central y, además, prepara a los y las estudiantes para resolver con éxito problemas complejos susceptibles de ser resueltos computacionalmente que les surgirán durante su devenir profesional, utilizando Python como lenguaje de programación vehicular.

Profesorado

NombreInstituciónCategoríaDoctor/aPerfil docenteÁreaEmail
CALVO GORDILLO, ISIDROUniversidad del País Vasco/Euskal Herriko UnibertsitateaProfesorado AgregadoDoctorNo bilingüeIngeniería de Sistemas y Automáticaisidro.calvo@ehu.eus
GARCIA ADEVA, ANGEL JAVIERUniversidad del País Vasco/Euskal Herriko UnibertsitateaProfesorado Titular De UniversidadDoctorNo bilingüeFísica Aplicadaangel.garcia-adeva@ehu.eus

Tipos de docencia

TipoHoras presencialesHoras no presencialesHoras totales
Magistral1522.537.5
P. Ordenador304575

Actividades formativas

DenominaciónHorasPorcentaje de presencialidad
Clases expositivas30.050 %
Ejercicios20.050 %
Trabajo Personal del Alumno/a22.50 %
Trabajos con equipos informáticos40.050 %

Sistemas de evaluación

DenominaciónPonderación mínimaPonderación máxima
Prácticas de ordenador60.0 % 60.0 %
Realización y presentación de trabajos e informes40.0 % 40.0 %

Resultados del aprendizaje de la asignatura

Conocimientos o contenidos:

RCO10: Conocer algoritmos eficientes para la resolución de problemas científicos reales asociados al procesamiento masivo de datos.



Competencias:

RC1: Ser capaz de evaluar y comparar los resultados obtenidos.

RC3: Conocer y utilizar las Tecnologías de la Información y la Comunicación científica.



Habilidades o destrezas:

RHE22: Habilidad de análisis de problemas científicos susceptibles de ser resueltos computacionalmente.

RHE23: Habilidad para implementar algoritmos en Python utilizando los entornos de programación y las librerías más adecuadas para cada situación.

RHE24: Habilidad de crear representaciones gráficas de datos en Python que permitan entender y visualizar fenómenos de distintos tipos.



Temario

Programación científica.

¿Qué es la programación científica? ¿Qué la diferencia de la programación ¿estándar?

El entorno de desarrollo: Anaconda, Ipython, Jupyter Notebooks.

Uso de entornos en Python para simplificar y organizar las tareas de desarrollo.

Introducción a Python: tipos de variables. Operadores y expresiones. Sintaxis. Control de flujo. Funciones. Entrada/Salida.

Elementos del lenguaje básicos para poder hacer programas sencillos en Python.

Computación numérica: NumPy.

El paquete numpy para realizar operaciones matemáticas en Python.

Visualización: Matplotlib.

Representación gráfica de datos en Python.

Computación científica de alto nivel: SciPy

El paquete SciPy para realizar operaciones matemáticas avanzadas con Python.

Manipulación y análisis de datos: Pandas.

Tratamiento y análisis de grandes volúmenes de datos con Python.

Machine Learning en Python: scikit-learn.

Análisis de datos predictivo y aprendizaje automático con Python.



Bibliografía

Bibliografía básica

El tutorial de Python: https://docs.python.org/es/3/tutorial/

M. González Harbour, J. J. Gutiérrez García, J. C. Palencia Gutiérrez, J. I. Espeso Martínez y A. Garandal Martín, Programación en Python, OCW, Universidad de Cantabria (2020). https://ocw.unican.es/course/view.php id=286§ion=1

A. P. Hinojosa Gutiérrez, Python. Paso a paso, RA-MA S.A. ISBN-10: 8499646115, ISBN-13: 978-8499646114 (2016).

R. Johansson, Numerical Python: Scientific Computing and Data Science Applications with Numpy, SciPy and Matplotlib, Apress, ISBN: 1484242452 (2018).

Pandas tutorial: https://www.w3schools.com/python/pandas/default.asp

scikit-learn Tutorials: https://scikit-learn.org/stable/tutorial/index.html

Bibliografía de profundización

Mark Lutz, Programming Python: Powerful Object-Oriented Programming, O'Reilly Media, Inc, USA, ISBN-10: 0596158106, ISBN-13: 978-0596158101 (2011).

Robert Johansson, Numerical Python Scientific Computing and Data Science Applications with Numpy, Scipy and Matplotlib, Kindle (2021)

Chris Albon, Machine Learning with Python Cookbook: Practical solutions from preprocessing to deep learning, O'Reilly Media, ISBN-10: 9781491989388, ISBN-13: 978-1491989388 (2018).

Contenido de XSL

Sugerencias y solicitudes