Documentos de Académico
Documentos de Profesional
Documentos de Cultura
En este proyecto vamos a organizar datos en tablas locales y de bases de datos para consultarlos y
modificarlos. Durante el proceso aprenderás a usar Jupyter Notebook para editar y ejecutar
programas de Python; organizar datos en tablas y consultar y combinar datos utilizando el lenguaje
SQL; definir tus propias funciones, y utilizar funciones y módulos de las bibliotecas pandas y
sqlite3.
En la primera tarea vamos a explorar objetos en listas y tablas de datos. Nos concentraremos en
tuplas y listas de Python y en tablas de pandas, y crearemos una tabla sencilla de cuatro
elementos conteniendo nombres, símbolos y números atómicos.
En esta tarea vamos a almacenar datos y leerlos desde archivos, y exploraremos sentencias
iterativas y condicionales para controlar el flujo de los programas.
En esta tarea vamos a crear una tabla de los elementos químicos. Usaremos Python y SQL al
mismo tiempo. La siguiente tabla muestra ejemplos de sentencias SQL.
CREATE TABLE elementos ( Crea la tabla elementos conteniendo tres columnas: id,
id INTEGER PRIMARY KEY, nombre y símbolo. Los tipos de datos son entero,
nombre TEXT NOT NULL, INTEGER, y texto, TEXT. NOT NULL indica que debe
simbolo TEXT NOT NULL) existir un dato. PRIMARY KEY significa que los datos
de la columna id serán únicos, para identificar a cada fila
de la tabla.
INSERT INTO elementos Inserta datos en la tabla elementos. Los valores se
VALUES (1, 'Cobre', 'Cu') especifican separados por comas y entre paréntesis.
SELECT * FROM elementos Selecciona todas las columnas de la tabla elementos.
En esta tarea vamos a crear una función de conexión a la base de datos y mostraremos los datos
de las tablas con un par de métodos. Agregaremos una columna a la tabla de elementos
químicos y actualizaremos los datos. Ejemplos de sentencias SQL:
En esta tarea vamos a crear una tabla elementos en la base de datos a partir de un archivo
conteniendo el número atómico, nombre, símbolo, periodo, grupo, año de descubrimiento y el
descubridor de cada elemento químico. Los datos fueron extraídos de Wikipedia. Luego
consultaremos datos utilizando tanto funciones de pandas como sentencias SQL.
6. Creando tablas relacionadas
Objetivo: distribuir los datos de una tabla en tablas relacionadas y consultar datos desde
varias tablas.
En esta tarea vamos a crear dos tablas relacionadas para optimizar el espacio de la tabla
elementos. La tabla Descubridores se formará con los nombres únicos de los descubridores.
Grupos de descubridores serán considerados como un descubridor. La tabla tendrá dos
columnas: Descubridor, de tipo texto, y la columna id, que será la columna PRIMARY KEY.
La tabla Elementos tendrá los mismos nombres de columnas que antes, pero la columna
Descubridor será de tipo entero, y tendrá el atributo FOREIGN KEY, que significa que sus
valores deben existir en otra tabla, en este caso la de Descubridores. Además, si un dato en la
tabla Descubridores es actualizado o eliminado, automáticamente se actualizará o eliminará el
dato referenciado en la tabla Elementos. La figura siguiente muestra la relación entre ambas
tablas. La columna Descubridor de Elementos debe tener un valor en la columna id de la tabla
Descubridores.
Luego combinaremos los datos de ambas tablas mediante consultas específicas. Por ejemplo
mostraremos cuantos elementos descubrió cada descubridor en orden descendente. Finalmente
eliminaremos un registro de la tabla Descubridores y comprobaremos que las entradas
correspondientes en la tabla Elementos también estén eliminadas.
Durante la presentación es recomendable que pauses los vídeos frecuentemente para ejecutar los
programas en tu espacio de trabajo. Por el corto tiempo de los vídeos, no es posible mencionar
todos los detalles de los códigos, funciones y programas. Nota que en Rhyme tienes un tiemplo
limitado para ejecutar los programas. En la sección de Recursos de la plataforma de Coursera
puedes descargar el cuaderno del proyecto. Si el entorno de Jupyter Notebook deja de responder
puedes detenerlo o reiniciarlo eligiendo del menú Kernel la opción Interrupt o la opción Restart.
Referencias
Python, https://docs.python.org/3.7/index.html
pandas, https://pandas.pydata.org/
SQLite, https://www.sqlite.org/index.html
sqlite3, https://docs.python.org/3/library/sqlite3.html
Anaconda edición individual, https://www.anaconda.com/products/individual
Tutorial de Python en español, https://docs.python.org/es/3.7/tutorial/index.html
Descubrimientos de los elementos químicos,
https://es.wikipedia.org/wiki/Descubrimiento_de_los_elementos_qu%C3%ADmicos