Ciencia de los Datos Aplicada
Undergraduate Programme. Academic Year 2026/2027.
PROGRAMACIÓN II - 806299
Curso Académico 2026-27
Datos Generales
- Plan de estudios: 081C - GRADO EN CIENCIA DE LOS DATOS APLICADA (2022-23)
- Carácter: Básica
- ECTS: 6.0
SINOPSIS
COMPETENCIAS
Generales
CG10 - Desarrollar la capacidad de expresar y aplicar rigurosamente los conocimientos adquiridos en la resolución de problemas.
Específicas
CE11 - Identificar y aplicar las técnicas adecuadas de programación y utilizarlas en el diseño de soluciones eficientes para problemas en distintos ámbitos, como el biosanitario, la geolocalización, la minería de texto, el procesamiento de imágenes, etc.
CE16 - Identificar y aplicar las técnicas algorítmicas básicas y avanzadas para encontrar soluciones secuenciales y paralelas a problemas, analizando la complejidad y la adecuación de los algoritmos propuestos según el tipo, la organización y el volumen de los datos.
CE17 - Identificar y comprender los conceptos básicos de cálculo, álgebra, matemática discreta, lógica y algoritmia, así como teoría de juegos y aplicar dichos conceptos en problemas reales.
ACTIVIDADES DOCENTES
Clases teóricas
Clases prácticas
Laboratorios
Presenciales
No presenciales
Semestre
Breve descriptor:
En esta asignatura se avanza en los conceptos y técnicas básicos de la programación y, especialmente, en la resolución de problemas de contenido matemático y estadístico. Entre las técnicas empleadas, se enfatiza principalmente la programación con ficheros y datos estructurados.
Requisitos
Objetivos
El objetivo general es adquirir las técnicas necesarias para construir programas correctos, fáciles de reutilizar y eficientes, con programas en pequeña escala, y usando las estructuras de datos fundamentales (listas, diccionarios y ficheros).
El enfoque será aplicado y los campos de aplicación de los programas diseñados serán, principalmente, las matemáticas, la estadística y la investigación operativa.
Contenido
1. Tipos estructurados (I)
a. Listas. Cadenas de caracteres y cadenas con formato
b. Mutabilidad, inmutabilidad y uso compartido de memoria
c. Efectos laterales en funciones
d. Ordenación de listas: algoritmos iterativos básicos
2. Recursión
a. Aspectos conceptuales: recursión e inducción, árbol de llamadas y terminación
b. Comparación entre iteración y recursión
c. Ejemplos de programas recursivos: búsqueda binaria, MergeSort, QuickSort y cálculo de percentiles
3. Tipos estructurados (II)
a. Conjuntos y diccionarios
b. Archivos y los módulos csv y json
4. Uso de módulos predefinidos: Numpy, Matplotib y Pandas.
Evaluación
La evaluación continua se llevará a cabo a través de las siguientes actividades:
- Pruebas objetivas, centradas en distintas partes de la asignatura, consistentes en resolución de ejercicios y problemas (75%). Será necesario obtener un mínimo de un 3.0 en cada una de estas pruebas para poder superar la asignatura mediante la evaluación continua. De lo contrario, la calificación obtenida mediante la evaluación continua se truncará a un 4.0 (suspenso), en caso de ser superior.
- Participación del estudiante en el aula, en las actividades formativas propuestas por el profesor y en las tutorías. Realización y defensa de prácticas de laboratorio, consistentes en programas informáticos propuestos por el profesor (25%)
Adicionalmente, se ofrecerá un examen final. Para el alumno que se presente a esta prueba, la nota final se calculará como el máximo entre:
a) La calificación de la prueba final.
b) La media ponderada de la evaluación continua y la prueba final, siendo el peso de la evaluación continua de un 50%.
De este modo, cualquier alumno tiene la opción de superar la asignatura mediante la evaluación continua, y también, cualquier alumno tendrá derecho a una prueba final pudiendo resultar su calificación la nota final del curso.
Bibliografía
2. Tutorial oficial de Python (https://docs.python.org/3/tutorial/index.html).
3. Documentación oficial de Python (https://docs.python.org/3).
4. Python para todos (http://mundogeek.net/tutorial-python/). Raúl González Duque.
5. Learning Python (5ª edición). Mark Lutz, O'Reilly, 2013.
6. Python. An Introduction to Programming (2ª edición). James R. Parker, Mercury Learning & Information, 2021.
7. Python for Data Analysis. Data Wrangling with pandas, NumPy & Jupyter (3ª edición). William McKinney, OReilly, 2022.
Otra información relevante
1. Practical Programming. An Introduction to Computer Science Using Python (3ª edición). Paul Gries, Jennifer Campbell y Jason Montojo, The Pragmatic Bookshelf, 2017.
2. Python for Kids. A Playful Introduction to Programming (2ª edición). Jason R. Briggs, No Starch Press, 2022.
3. Doing Math with Python. Use programming to explore Algebra, Statistics, Calculus, and More! Amit Saha, No Starch Press, 2015.
4. A Primer on Scientific Programming with Python (5ª edición). Hans P. Langtangen, Springer, 2016.
Estructura
| Módulos | Materias |
|---|---|
| No existen datos de módulos o materias para esta asignatura. | |
Grupos
| Clases teóricas y/o prácticas | ||||
|---|---|---|---|---|
| Grupo | Periodos | Horarios | Aula | Profesor |
| Grupo único | 25/01/2027 - 13/05/2027 | MIÉRCOLES 11:00 - 13:00 | - | CRISTOBAL PAREJA FLORES |
| Actividades prácticas | ||||
|---|---|---|---|---|
| Grupo | Periodos | Horarios | Aula | Profesor |
| Grupo único | 25/01/2027 - 13/05/2027 | VIERNES 09:00 - 11:00 | - | CRISTOBAL PAREJA FLORES |
