EdX

Scripting with Python and SQL for Data Engineering (edX)

Scripting with Python and SQL for Data Engineering (edX)

Master data manipulation using Python and SQL for data engineering. Extract, transform, and load data efficiently to drive insights and decision-making. In this course, part of the Python, Bash and SQL Essentials for Data Engineering Specialization, you will gain the skills to work effectively with data using Python and SQL.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

You will learn to:

  • Leverage Python's powerful data structures to load, manipulate, and analyze data
  • Create robust Python scripts to automate data processing tasks
  • Utilize SQLite to store and retrieve data from within your Python scripts
  • Extract data from websites using web scraping techniques and persist it in databases
  • Work with MySQL databases using modern tools like VSCode to execute queries and manage data

Whether you are a data engineer, analyst, or aspiring data professional, this course will equip you with the essential skills to efficiently handle data and drive meaningful insights in today's data-driven world.
This course is part of the Data Engineering Foundations Professional Certificate.

What you'll learn

  • Manipulate data using Python's built-in data structures
  • Create Python scripts to automate data tasks
  • Use SQLite to store and query data in Python
  • Extract data from websites via web scraping
  • Execute MySQL queries and operations in VSCode
  • Import and export data in MySQL databases

Syllabus

Here is the course structure formatted with bullets for each module:

Module 1: Working with Data in Python (5 hours)
\- Videos (Total 62 minutes):
\- Welcome to Scripting with Python and SQL for Data Engineering (Preview module)
\- Meet your Course Instructor: Alfredo Deza (0 minutes)
\- Overview of Key Concepts (4 minutes)
\- Introduction to Working with Data in Python (0 minutes)
\- Introduction to Python Data Structures (0 minutes)
\- Using Lists to Save and Retrieve Data in Python (5 minutes)
\- Using Dictionaries to Save and Retrieve Data in Python (7 minutes)
\- Overview of Less Common Data Structures in Python (4 minutes)
\- Recap of Data Structures in Python (1 minute)
\- Introduction to Choosing Data Structures in Python (1 minute)
\- Iterating Over Lists and Dictionaries in Python (7 minutes)
\- Iterating Over Other Data Structures in Python (2 minutes)
\- Storing Data Between Data Structures in Python (6 minutes)
\- Recap of Mapping Data Structures in Python (1 minute)
\- Introduction to Data Sources and Formats in Python (0 minutes)
\- Loading Data from Files and File Paths in Python (6 minutes)
\- Working with JSON in Python (6 minutes)
\- Saving Data from Python to Disk (4 minutes)
\- Recap of Persisting and Loading Data in Python (0 minutes)
\- Readings (Total 80 minutes):
\- Connect with your instructor (10 minutes)
\- Meet your Supporting Instructors: Kennedy Behrman and Noah Gift (10 minutes)
\- Course Structure and Discussion Etiquette (10 minutes)
\- Key Terms (10 minutes)
\- Python Lists and Dictionaries (10 minutes)
\- Key Terms (10 minutes)
\- Key Terms (10 minutes)
\- Build a notebook that reformats data into JSON (10 minutes)
\- Quizzes (Total 60 minutes):
\- Using Data Structures in Python (30 minutes)
\- Working with Data in Python (30 minutes)
\- Discussion Prompt (Total 10 minutes):
\- Meet and Greet (optional) (10 minutes)
\- Ungraded Labs (Total 120 minutes):
\- Looping Over Lists and Dictionaries in Python (60 minutes)
\- Loading and Saving JSON Files (60 minutes)

Module 2: Python Scripting and SQL (5 hours)
\- Videos (Total 56 minutes):
\- Introduction to Python Scripting and SQL (Preview module)
\- Introduction to Scripting in Python (0 minutes)
\- Creating a Script as a Module in Python (5 minutes)
\- Traversing the File System with a Script in Python (7 minutes)
\- Recap of Python Scripting Basics (0 minutes)
\- Introduction to Embedded Databases (0 minutes)
\- What is SQLite? (2 minutes)
\- Creating and Connecting to a SQLite Database in Python (5 minutes)
\- Saving and Querying from a SQLite Database in Python (10 minutes)
\- Recap of SQLite and Python (1 minute)
\- Introduction to Querying with SQL in Python (1 minute)
\- Basic SQL Commands in Python (6 minutes)
\- Extracting Distinct Data using SQL in Python (7 minutes)
\- Searching with SQL in Python (5 minutes)
\- Recap of Querying with SQL in Python (1 minute)
\- Readings (Total 70 minutes):
\- Key Terms (10 minutes)
\- Minimal Python, Chapter 2: Learn to Store Data (10 minutes)
\- Key Terms (10 minutes)
\- Example GitHub Repository (10 minutes)
\- Key Terms (10 minutes)
\- Example GitHub Repository (10 minutes)
\- Create a Reporting Script for File Sizes (10 minutes)
\- Quiz (Total 30 minutes):
\- Python Scripting and SQL (30 minutes)
\- Ungraded Labs (Total 180 minutes):
\- Build a Script to Find Large Files (60 minutes)
\- Create a SQLite Database and Store Data (60 minutes)
\- Querying a SQLite Database (60 minutes)

Module 3: Web Scraping using Python (4 hours)
\- Videos (Total 64 minutes):
\- Introduction to Web Scraping using Python (Preview module)
\- Introduction to Extracting Data from Unstructured HTML (1 minute)
\- Challenges with Web Data (3 minutes)
\- Parsing HTML with HTMLParser in Python (5 minutes)
\- Recap of Web Scraping Techniques in Python (0 minutes)
\- Introduction to Scrapy and XPath in Python (1 minute)
\- Creating a Web Scraping Project with Scrapy in Python (6 minutes)
\- Parsing Data with XPath and Scrapy Shell (11 minutes)
\- Using Scrapy Spider for Web Scraping (5 minutes)
\- Recap of Scrapy and XPath in Python (0 minutes)
\- Overview of Challenges with Web Scraping (2 minutes)
\- Scraping Locally (8 minutes)
\- Persisting Data in CSV and JSON Formats (9 minutes)
\- Persisting Data to a SQLite Database (6 minutes)
\- Recap of Persistence and Efficacy with Web Scraping (1 minute)
\- Readings (Total 70 minutes):
\- Key Terms (10 minutes)
\- Parsing Techniques with HTMLParser (10 minutes)
\- Key Terms (10 minutes)
\- Codespaces Lab: Parse HTML with Scrapy and XPath (10 minutes)
\- Key Terms (10 minutes)
\- Efficient Scraping Techniques (10 minutes)
\- Build a Web Scraping Tool (10 minutes)
\- Quiz (Total 30 minutes):
\- Web Scraping using Python (30 minutes)
\- Ungraded Labs (Total 120 minutes):
\- Parse HTML with HTMLParser (60 minutes)
\- Parse HTML and Persist it to a SQLite Database (60 minutes)

Module 4: Working with MySQL (7 hours)
\- Videos (Total 69 minutes):
\- Introduction to Working with MySQL (Preview module)
\- Introduction to VSCode with MySQL (1 minute)
\- Connecting to a MySQL Server (8 minutes)
\- Recap of VSCode with MySQL (1 minute)
\- Challenges of Running MySQL Queries (1 minute)
\- Using VSCode to Execute MySQL Queries (6 minutes)
\- Recap of Running MySQL Queries (1 minute)
\- Challenges with Importing to Databases (1 minute)
\- Importing CSV Data into MySQL (6 minutes)
\- Exporting Data from MySQL (6 minutes)
\- Recap of Importing and Exporting Data in MySQL (1 minute)
\- MySQL Hacking Overview (2 minutes)
\- MySQL from Terminal (3 minutes)
\- Archive and Drop Database (5 minutes)
\- Import external database Sakila (7 minutes)
\- Modify database Sakila (4 minutes)
\- Bash pipelines with MySQL (5 minutes)
\- MySQL to Python Standard Library Web Server (4 minutes)
\- Readings (Total 70 minutes):
\- Key terms (10 minutes)
\- Key terms (10 minutes)
\- Working with VSCode and MySQL (10 minutes)
\- Key Terms (10 minutes)
\- Lesson Reflection (10 minutes)
\- Loading and Exporting Data using MySQL (10 minutes)
\- Next Steps (10 minutes)
\- Quiz (Total 30 minutes):
\- Working with MySQL (30 minutes)
\- Ungraded Labs (Total 300 minutes):
\- Connect to a Running MySQL Server (60 minutes)
\- Running Queries Repository (60 minutes)
\- Export and Import Data in MySQL (60 minutes)
\- Linux Hacking with MySQL (60 minutes)
\- MySQL Sandbox (60 minutes)

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

CS50's Introduction to Computer Science (edX) EdX
HarvardX,Harvard University

CS50's Introduction to Computer Science (edX)

An introduction to the intellectual enterprises of computer science and the art of programming. This is CS50, Harvard University's introduction to the intellectual enterprises of computer science and the art of programming for majors and non-majors alike, with or without prior programming experience. An entry-level course taught by David J. Malan, CS50 teaches students how to think algorithmically and solve problems efficiently.

Self Paced
Self-Paced
Python for Data Engineering Project (edX) EdX
IBM

Python for Data Engineering Project (edX)

An opportunity to apply your foundational Python skills via a project, using various techniques to collect and work with data. Journey into the realm of becoming a Data Engineer and apply your basic Python knowledge of working with data. You will exercise various techniques in Python to extract data in multiple file formats from different sources, transform it into specific datatypes, and then prepare it for loading it into a database.

Self Paced
Self-Paced
Computing in Python IV: Objects & Algorithms (edX) EdX
Georgia Institute of Technology,GTx

Computing in Python IV: Objects & Algorithms (edX)

Learn about recursion, search and sort algorithms, and object-oriented programming in Python. Complete your introductory knowledge of computer science with this final course on objects and algorithms. Now that you've learned about complex control structures and data structures, learn to develop programs that more intuitively leverage your natural understanding of problems through object-oriented programming. Then, learn to analyze the complexity and efficiency of these programs through algorithms. In addition, certify your broader knowledge of Introduction to Computing with a comprehensive exam.

Self Paced
Self-Paced
Fundamentos TIC para profesionales de negocios: Programación (edX) EdX
Universitat Politècnica de València,UPValenciaX

Fundamentos TIC para profesionales de negocios: Programación (edX)

¿Tienes que trabajar con las Tecnologías de la Información y te faltan conocimientos? Conoce los fundamentos de la programación software. Este curso forma parte de una serie de 5 cursos de introducción al uso de sistemas de información en las empresas que te introducirá en el apasionante mundo de las TIC.

Self Paced
Self-Paced
Python Data Structures (edX) EdX
University of Michigan,MichiganX

Python Data Structures (edX)

The second course in Python for Everybody explores variables that contain collections of data like string, lists, dictionaries, and tuples. Learning how to store and represent and manipulate data collections while a program is running is an important part of learning how to program.

Self Paced
Self-Paced
Relational Database Basics (edX) EdX
IBM

Relational Database Basics (edX)

This course teaches you the fundamental concepts of relational databases and Relational Database Management Systems (RDBMS). This course is an introduction to the world of relational databases. You will explore the fundamental concepts of relational databases and Relational Database Management Systems (RDBMS), learn about relational database design, and understand how to transform source data into tables with clearly defined relationships.

Self Paced
Self-Paced
Visualizing Data with Python (edX) EdX
IBM

Visualizing Data with Python (edX)

Data visualization is the graphical representation of data in order to interactively and efficiently convey insights to clients, customers, and stakeholders in general. "A picture is worth a thousand words." We are all familiar with this expression. It especially applies when trying to explain the insights obtained from the analysis of increasingly large datasets. Data visualization plays an essential role in the representation of both small and large-scale data. One of the key skills of a data scientist is the ability to tell a compelling story, visualizing data and findings in an approachable and stimulating way.

Self Paced
Self-Paced