Guía docente de Fundamentos de Programación Aplicada al Análisis Social (MD6/56/1/2)

Curso 2024/2025
Fecha de aprobación por la Comisión Académica 21/06/2024

Máster

Máster Universitario en Ciencia de Datos Aplicada a las Ciencias Sociales

Módulo

Fundamentos de la Ciencia de Datos Aplicada a las Ciencias Sociales.

Rama

Ciencias Sociales y Jurídicas

Centro Responsable del título

Escuela Internacional de Posgrado

Semestre

Primero

Créditos

4.5

Tipo

Obligatorio

Tipo de enseñanza

Presencial

Profesorado

  • Ramón Gutiérrez Sánchez
  • Miguel José Molina Solana

Horario de Tutorías

Ramón Gutiérrez Sánchez

Email
No hay tutorías asignadas para el curso académico.

Miguel José Molina Solana

Email
No hay tutorías asignadas para el curso académico.

Breve descripción de contenidos (Según memoria de verificación del Máster)

  1. Introducción a la programación: lenguajes R y Python 
  2. Programación en R: 
    • Variables, operadores y tipos de datos 
    • Carga y transformación de conjuntos datos
    • Flujos de procesamiento 
    • Visualización básica de datos
  3. Programación en Python: 
    • Variables, operadores y tipos de datos simples
    • Tipos de datos estructurados
    • Condicionales y bucles 
    • Entrada y salida de datos
    • Funciones 
  4. Buenas prácticas de programación
     

Prerrequisitos y/o Recomendaciones

No existen prerrequisitos

Competencias

Competencias Básicas

  • CB6. Poseer y comprender conocimientos que aporten una base u oportunidad de ser originales en desarrollo y/o aplicación de ideas, a menudo en un contexto de investigación.
  • CB7. Que los estudiantes sepan aplicar los conocimientos adquiridos y su capacidad de resolución de problemas en entornos nuevos o poco conocidos dentro de contextos más amplios (o multidisciplinares) relacionados con su área de estudio.
  • CB8. Que los estudiantes sean capaces de integrar conocimientos y enfrentarse a la complejidad de formular juicios a partir de una información que, siendo incompleta o limitada, incluya reflexiones sobre las responsabilidades sociales y éticas vinculadas a la aplicación de sus conocimientos y juicios.
  • CB9. Que los estudiantes sepan comunicar sus conclusiones y los conocimientos y razones últimas que las sustentan a públicos especializados y no especializados de un modo claro y sin ambigüedades.
  • CB10. Que los estudiantes posean las habilidades de aprendizaje que les permitan continuar estudiando de un modo que habrá de ser en gran medida autodirigido o autónomo.

Resultados de aprendizaje (Objetivos)

  • Presentar la historia de la programación y de los distintos paradigmas de programación, situando en ese contexto el lenguaje de programación que se va a utilizar.
  • Conocer y distinguir los conceptos de algoritmo y programa.
  • Aprender a usar las estructuras de control básicas: secuencial, condicional e iterativa.
  • Motivar e introducir los tipos de datos específicos de cada lenguaje: vectores, listas, dataframe, diccionarios, etc. así como sus operaciones.
  • Motivar y aprender a resolver problemas mediante algoritmos
     

Programa de contenidos Teóricos y Prácticos

Teórico

  1. Introducción a la programación: lenguajes R y Python 
  2. Programación en R: 
    • Variables, operadores y tipos de datos 
    • Carga y transformación de conjuntos datos
    • Flujos de procesamiento 
    • Visualización básica de datos
  3. Programación en Python: 
    • Variables, operadores y tipos de datos simples
    • Tipos de datos estructurados
    • Condicionales y bucles 
    • Entrada y salida de datos
    • Funciones 
  4. Buenas prácticas de programación

 

Práctico

  1. Instalación de entornos de programación R y Python.
  2. Programación en lenguaje R
  3. Programación en lenguaje Python
     

Bibliografía

Bibliografía fundamental

R
Davies, T. M. (2016). The book of R: a first course in programming and statistics. No Starch Press.
Fernández-Avilés, G., & Montero, J.-M. (2024). Fundamentos de ciencia de datos con R. McGraw-Hill Interamericana de España.
Haro, J. J. de. (2017). Introducción a la programación con R: R como primer lenguaje de programación, orientado a la aplicación científica. Independently published.
Long, J. D., & Teetor, P. (2019). R cookbook: Proven recipes for data analysis, statistics, and graphics. O’Reilly Media.
Wickham, H., Çetinkaya-Rundel, M., & Grolemund, G. (2023). R for data science.  O’Reilly Media, Inc.

Python
Bahit, E. (2020). Python para Principiantes: Edición 2020 (Vol. 1). EBRC Publisher.
Beazley, D., & Jones, B. K. (2013). Python cookbook: Recipes for mastering Python 3.  O’Reilly Media, Inc.
Cuantum Technologies. (2024). Programación en Python Desbloqueada para Principiantes. Independently published.
Martelli, A., Ravenscroft, A., & Ascher, D. (2005). Python cookbook.  O’Reilly Media, Inc.
 

Bibliografía complementaria

Van Atteveldt, W., Trilling, D., & Calderon, C. A. (2022). Computational analysis of communication: A Practical Introduction to the Analysis of Texts, Networks, and Images With Code Examples in Python and R. John Wiley & Sons.

Enlaces recomendados

R
Grolemund, G. (s. f.). Hands-On Programming with R. Recuperado 5 de mayo de 2024, de https://rstudio-education.github.io/hopr/
Long, J. (JD), & Teetor, P. (s. f.). R Cookbook, 2nd Edition. Recuperado 5 de mayo de 2024, de https://rc2e.com/
Montero, G. F.-A. y J.-M. (s. f.). Prefacio | Fundamentos de ciencia de datos con R. Recuperado 5 de mayo de 2024, de https://cdr-book.github.io/
R Para Ciencia de Datos. (2023, junio 6). https://es.r4ds.hadley.nz/
Río, F. M. del. (s. f.). Programación con R. Recuperado 5 de mayo de 2024, de https://www4.ujaen.es/~fmartin/R/


Python
Delgado Quintero, S. (2024, mayo 3). Aprende Python. https://aprendepython.es/_downloads/907b5202c1466977a8d6bd3a2641453f/aprendepython.pdf
El tutorial de Python. (s. f.). Python documentation. Recuperado 5 de mayo de 2024, de https://docs.python.org/3/tutorial/index.html
PEP 8 – Style Guide for Python Code | peps.python.org. (s. f.). Python Enhancement Proposals (PEPs). Recuperado 5 de mayo de 2024, de https://peps.python.org/pep-0008/
Presentación—Fundamentos de Programación en Python. (s. f.). Recuperado 5 de mayo de 2024, de https://www2.eii.uva.es/fund_inf/python/notebooks/00_Introduccion/Introduccion.html
 

Metodología docente

Evaluación (instrumentos de evaluación, criterios de evaluación y porcentaje sobre la calificación final.)

Evaluación Ordinaria

Las normativas de Evaluación y Calificación del Estudiantado de la Universidad de Granada y la Universidad de Salamanca establecen que la convocatoria ordinaria estará basada preferentemente en la evaluación continua del estudiante, excepto para quienes se le haya reconocido el derecho a la evaluación única final.

Atendiendo a ello, la calificación final del estudiante se compone de las siguientes partes con las ponderaciones indicadas:

  • Parte práctica: Supone un 70% de la calificación final, y se desglosa en:
    • 30% entrega de ejercicios propuestos en clase. 
    • 10% elaboración de un ensayo propuesto.
    • 30% entrega de informes de las prácticas realizadas en el curso. 
  • Participación activa: Supone el restante 30% de la calificación final. Consistirá en presentar las soluciones planteadas a algunos problemas propuestos en clase.
     

Evaluación Extraordinaria

Las normativas de Evaluación y Calificación del Estudiantado de la Universidad de Granada y la Universidad de Salamanca establecen que los estudiantes que no hayan superado la asignatura en la convocatoria ordinaria dispondrán de una convocatoria extraordinaria. A ella podrán concurrir todos los estudiantes, con independencia de haber seguido o no un proceso de evaluación continua.

De esta forma, el estudiante que no haya realizado la evaluación continua tendrá la posibilidad de obtener el 100% de la calificación mediante la realización de una prueba en ordenador que consistirá en la resolución de diferentes supuestos prácticos, relacionados con las materias impartidas en clase.

Evaluación única final

Las normativas de Evaluación y Calificación del Estudiantado de la Universidad de Granada y la Universidad de Salamanca establecen que podrán acogerse a la evaluación única final, el estudiantado que no pueda cumplir con el método de evaluación continua por causas justificadas. 

Para acogerse a la evaluación única final, el estudiante, en las dos primeras semanas de impartición de la asignatura o en las dos semanas siguientes a su matriculación si ésta se ha producido con posterioridad al inicio de las clases o por causa sobrevenidas, lo solicitará, a través del procedimiento electrónico, a la Coordinación del Máster, quien dará traslado al profesorado correspondiente, alegando y acreditando las razones que le asisten para no poder seguir el sistema de evaluación continua.

De acuerdo a la mencionada normativa, aquellos estudiantes que opten por acogerse a la "Evaluación única final" y se les conceda, realizarán una prueba en ordenador que supondrá el 100% de su calificación en la asignatura, y que consistirá en la resolución de diferentes supuestos prácticos, relacionados con las materias impartidas en clase.

Información adicional

Información de interés para estudiantado con discapacidad y/o Necesidades Específicas de Apoyo Educativo (NEAE): Gestión de servicios y apoyos (https://ve.ugr.es/servicios/atencion-social/estudiantes-con-discapacidad).