Herramientas de programación para el análisis de datos
El procesamiento y análisis de datos es una habilidad esencial en el ejercicio profesional en campos muy diversos. El objetivo detrás de la recolección de información es poder extraer aprendizajes útiles. Para llegar a ellos se requiere invertir una gran cantidad de tiempo y por esto se requiere el conocimiento de técnicas que hagan el proceso más eficiente, como buenas prácticas en el manejo de datos, programación con base en código, pautas para exploración de datos por medio de gráficos y estadísticas descriptivas. Este curso ofrece a los participantes los principios conceptuales y los fundamentos prácticos en las herramientas más importantes para el procesamiento y análisis de datos con una introducción a los lenguajes de programación o paquetes estadísticos más utilizados en centros de investigación y entidades públicas y privadas, como Python, R y Stata .
Dirigido a
Profesionales de cualquier área del conocimiento interesados en el uso de técnicas computacionales para el análisis de datos. El curso es un primer acercamiento a las técnicas de programación para aquellas personas que no están familiarizadas con los lenguajes de programación. Ofrece a cualquier profesional la oportunidad de conocer las consideraciones fundamentales sobre los lenguajes de programación y aplicarlas en diferentes situaciones. Las actividades tienen un enfoque práctico para asegurar que los estudiantes adquieran los conocimientos necesarios para el análisis de cualquier tipo de información.
Objetivos
Al final del curso, los estudiantes estarán en la capacidad de aproximarse a cualquier base de datos real, cargarla a su entorno de trabajo, hacer un procesamiento previo de limpieza y organización, e identificar y aplicar técnicas estadísticas que les permitan extraer aprendizajes útiles mediante metodologías de análisis descriptivo, correlacional y de regresión.Los estudiantes estarán en la capacidad de escoger críticamente entre diferentes herramientas computacionales para tomar una técnica estadística conocida y de manera autónoma aprender a aplicarla computacionalmente empleando los recursos disponibles con versatilidad (documentación, blogs, casos de estudio, etc).
a. Clasificar los lenguajes de programación más usados para el manejo de datos de acuerdo con sus propiedades y características generales.
b. Explorar de forma autónoma las herramientas de aprendizaje disponibles para cada lenguaje de de programación (documentación, blogs, casos de estudio, etc).
c. Desarrollar pensamiento algorítmico mediante los elementos esenciales de la programación.
d. Extraer conocimiento significativo de las bases de datos por medio de su exploración.
e. Conocer e implementar las mejores prácticas de programación que permitan el trabajo colaborativo más eficiente.
Metodología
Para este curso no se requieren conocimientos previos de programación. El curso está organizado en tres módulos, cada uno de cinco clases. En cada módulo los estudiantes enfrentarán un conjunto de preguntas y competencias que son usualmente requeridas en el ejercicio cotidiano del análisis de datos mediante métodos computacionales.
La característica fundamental de este curso radica en que los participantes podrán explorar estas operaciones en varios lenguajes de programación, Python, R y Stata. Si bien, las clases serán en el lenguaje de programación Python, en el material del curso de libre estudio se replicarán todos los ejercicios en los ambientes de R y Stata y se realizarán ejercicios complementarios para que los estudiantes se familiaricen con estos ambientes. Así, estos lenguajes estarán conviviendo simultáneamente durante el acercamiento a problemas similares y para el desarrollo de los objetivos de aprendizaje.
En cada clase los estudiantes tendrán acercamiento guiado a los procedimientos teóricos con ejemplos aplicados en Python. Luego, se propondrán ejercicios con variaciones de los ejemplos mostrados que requieran la exploración individual de documentación, consulta en blogs, casos de estudio, etc. Los ejercicios complementarios permitirán a los estudiantes entrenar y comparar los otros ambientes de programación (R y Stata) de forma sistemática y acompañada. Con esto se espera formar en los participantes un pensamiento algorítmico abstracto y competencias de lectura y exploración de recursos (como las diferentes documentaciones) por encima de la memorización de la sintaxis en cada lenguaje.
Además, se desarrollarán discusiones cortas durante las sesiones que permitan compartir experiencias entre los estudiantes sobre las diferentes estrategias que emplean durante los ejercicios. De esta manera, los participantes del curso desarrollarán competencias de análisis crítico sobre la utilidad y relevancia de las herramientas utilizadas en el curso.
El primer módulo es conceptual y busca generar conciencia de los conocimientos previos en lógica y matemáticas básicas que son necesarios para utilizar los lenguajes de programación. En las clases se ofrecen reflexiones sobre el panorama social de los lenguajes de programación, sus diferentes características, ventajas, desventajas, y sus posibilidades de aplicación en los entornos laborales.
El segundo módulo se enfoca en el procesamiento de los datos para generar análisis eficientes y realizar exploración con estadísticas descriptivas. El tercer módulo busca generar visualización de datos con base en código, que permite comunicar los hallazgos más importantes del proceso de análisis. En estos dos módulos se utilizan datos reales de situaciones con diferente nivel de complejidad, para generar una experiencia cercana al contexto profesional real.
Contenido
Módulo 1: Entendiendo los lenguajes de programación para el análisis de datos (10 horas). En este módulo los estudiantes serán capaces de responder a las preguntas: ¿Qué son los LP, su historia, su clasificación y su importancia actual?, ¿Qué es un algoritmo?, ¿Qué es el pensamiento algorítmico?,¿Cuál es el mejor LP para cada necesidad?, ¿Qué LP debo usar en mi trabajo?, ¿Qué son los scripts o bitácoras? Además, podrán explorar las primeras preguntas sobre los aspectos técnicos de un LP: ¿Qué son elementos mutables e inmutables?, ¿Qué es un ciclo y para qué sirve?, ¿Qué es una función?, ¿Qué son macros?, ¿Qué son los condicionales y operadores lógicos?, ¿Cómo organizar el código siguiendo buenas prácticas de programación?
Módulo 2: Aplicaciones al procesamiento de bases de datos (10 horas). En este módulo los estudiantes serán capaces de responder a las preguntas: ¿Cómo cargar información en los LP?, ¿Qué son las estructuras de datos?, ¿Qué formas de organizar bases de datos existen?, ¿Cómo puedo reestructurar las bases de datos?, ¿Cómo puedo generar nuevas variables?, ¿Cómo puedo combinar bases de datos o hacer cruces entre ellas?, ¿Cómo puedo generar estadísticas descriptivas de los datos?
Módulo 3: Visualización de datos (10 horas). En este módulo los estudiantes realizarán actividades aplicadas a necesidades cotidianas que nos plantean las siguientes preguntas: ¿Cómo observo el comportamiento de los datos a través de categorías de análisis?, ¿Cómo observo el comportamiento de los datos a través de relaciones entre variables?, ¿Cómo puedo estimar coeficientes de correlación?, ¿Puedo automatizar este análisis?, ¿Cómo comunico los hallazgos de la exploración de datos?
Condiciones
Eventualmente la Universidad puede verse obligada, por causas de fuerza mayor a cambiar sus profesores o cancelar el programa. En este caso el participante podrá optar por la devolución de su dinero o reinvertirlo en otro curso de Educación Continua que se ofrezca en ese momento, asumiendo la diferencia si la hubiere.
La apertura y desarrollo del programa estará sujeto al número de inscritos. El Departamento/Facultad (Unidad académica que ofrece el curso) de la Universidad de los Andes se reserva el derecho de admisión dependiendo del perfil académico de los aspirantes.