Centro de Investigación y Docencia Económicas, A. C.

Maestría en economía

Introducción a la ciencia de datos

Laboratorio

 

Rafael Martínez Martínez

Federico Daverio Occini

Primavera 2021

Laboratorio 1

1. Conceptos básicos

2. Instalación

3. Control de versiones

Laboratorio 2

1. Lenguajes de programación

2. Tipos de datos

3. Introducción tipos de errores y excepciones

4. Introducción funciones y módulos

5. Control de flujo (if -elif - else)

Algoritmo.

Descripción del método mediante el cual se realiza una tarea (algoritmo para encontrar máximos y mínimos)

Características

  • Un algoritmo debe ser preciso e indicar el orden de realización de cada paso.
  • Un algoritmo debe ser definido. Si se sigue un algoritmo dos veces, se debe obtener el mismo resultado cada vez
  • Un algoritmo debe ser finito. Si se sigue un algoritmo, se debe de terminar en algún momento.

Lenguajes de programación

Representaciones de los algoritmos

  • Diagramas de flujo. Forma gráfica para describir un algoritmo
  • Pseudocódigo. Manera "informal" de describir un algoritmo

Lenguajes de programación

Imagen tomada del enlace

Imagen tomada del enlace

Lenguaje de programación.

Es un lenguaje formal (símbolos y reglas) usado en una computadora para implementar algoritmos.

Elementos

  • Conjunto de operaciones primitivas (números, cadenas, operaciones)
  • Mecanismos para combinar primitivas y formar expresiones más complejas
    • Sintaxis. Cómo se escriben las cosas (2.5 + 2.1)
    • Semántica. Qué significan las cosas (2.3 / 'a')
  • Mecanismos para deducir el significado o valores asociados con los cálculos o expresiones

Lenguajes de programación

Objetivo inicial

Aprender la sintaxis y semántica del lenguaje de programación Python para implementar algoritmos que dan solución a problemas específicos.

¿Por qué Python?

  • Existen varias razones (clase 1)
  • Es multiparadigma ¿? (imperativo, orientado a objetos)

Lenguajes de programación

Python es un lenguaje de programación que se concibió a finales de 1980 por Guido van Rossum. El nombre de Python se deriva de la serie de televisión Monty Python's Flying Circus.

¿Cuántos lenguajes de programación existen?

Lenguajes de programación

No aprendas un lenguaje de programación aprende los conceptos de programación para buscar las implementaciones (sintaxis) de tu interés

parte1 = 'Hola'
parte2 = 'mundo'
completo = parte1 + "-" + parte2
parte1 = 'Hola';
parte2 = 'Mundo';
completo = strcat(parte1,'-',parte2)
parte1 <- 'Hola';
parte2 <- 'Mundo';
completo <- paste(parte1,'-',parte2)
#include <stdio.h>
#include <string.h>

int main()
{
    char str[80];
    strcpy(str, "Hola");
    strcat(str, "-");
    strcat(str, "Mundo");
    printf("%s",str);

    return 0;
}

Tipos de datos básicos

Numéricos

{

  • Enteros
  • Flotantes
  • Complejos

Secuencias

{

  • Mutables

 

 

  • Inmutables

 

{

{

  • Cadenas de caracteres
  • Tuplas
  • Bytes
  • Listas
  • Colección de bytes
  • Otros
  • int
  • bool

{

Otros tipos: Conjuntos, Mapeos (diccionarios), invocables (funciones, métodos, clases, y otros), Módulos, etc.

Tipos de datos básicos

Numéricos

{

  • Enteros
  • Flotantes
  • Complejos

Secuencias

{

  • Mutables

 

 

  • Inmutables

 

{

{

  • Cadenas de caracteres
  • Tuplas
  • Bytes
  • Listas
  • Colección de bytes
  • Otros
  • int
  • bool

{

Otros tipos: Conjuntos, Mapeos (diccionarios), invocables (funciones, métodos, clases, y otros), Módulos, etc.

Laboratorio 3

1. Divulgación

2. Funciones y Métodos

3. Ciclos

Uso de datos

Divulgación

Machine Learning, Evaluación de Impacto enlace

Divulgación

Laboratorio 4

1. Divulgación

2. Control de excepciones

¿Quién tiene el poder en internet?

Divulgación

¿Cuántas exepciones existen?

 

Control de excepciones

Laboratorio 5

1. Divulgación

2. Paradigmas

3. Comprensión

4. Lambdas

5. Recursión

¿De qué es capaz la inteligencia artificial?

Divulgación

Un paradigma de programación indica un método de realizar cómputos y la manera en que se deben estructurar y organizar las tareas que debe llevar a cabo un programa

 

 

 

Programming Paradigms Stanford

Paradigmas de programación

Laboratorio 6

1. Divulgación

2. Árboles (clasificación)

3. Estructuras

Cómo cambia nuestra sociedad la inteligencia artificial

Divulgación

Laboratorio 7

1. Divulgación

2. Dudas

Límites éticos para la inteligencia artificial

Divulgación

Laboratorio 8

1. Divulgación

2. NumPy

3. pandas

Divulgación

Laboratorio 9

1. NumPy II

2. pandas II

Laboratorio 10

1. Ejemplos NumPy

2. Ejemplos pandas

Laboratorio 11

1. Análisis exploratorio de datos

2. Expresiones regulares

2. Scraping

Laboratorio 12

1. Visualización

2. Tableros

Laboratorio 13

1. Regresión

2. ML

Made with Slides.com