Buying for a Team? Gift This Course
Wishlisted Wishlist

Please confirm that you want to add Data Analysis with Python & Pandas to your Wishlist.

Add to Wishlist

Data Analysis with Python & Pandas

Learn Python for data analysis and visualization by analyzing large datasets. Covering Python 3, Pandas, and Seaborn.
4.4 (430 ratings)
Instead of using a simple lifetime average, Udemy calculates a course's star rating by considering a number of different factors such as the number of ratings, the age of ratings, and the likelihood of fraudulent ratings.
4,125 students enrolled
Created by Ardit Sulce
Last updated 12/2016
$10 $65 85% off
5 days left at this price!
30-Day Money-Back Guarantee
  • 4.5 hours on-demand video
  • 6 Articles
  • 24 Supplemental Resources
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Have a coupon?

This Python course will get you up and running with using Python for data analysis and visualization. You will learn how to handle, analyze and visualize data in Python by actually completing two big data analysis projects, one demonstrated through videos and another laid out through six exercises.  

The course assumes you have no prior knowledge of Python, so you also get to learn the basics of Python in the first two sections of the course. However, if you already know Python, the first two sections can serve as a refresher before you jump into the data analysis and visualization part.

In the course you will learn to use Python third-party data analysis libraries such as Pandas, Matplotlib, Seaborn, just to mention a few and tools to boost your productivity such as Spyder and Jupyter.

As you progress through the course, you will be guided step by step on building a program that uses real world data containing hundreds of files and millions of records. You will learn to write Python code that downloads, extracts, cleans, manipulates, aggregates and visualizes these datasets using Python. Apart from following the video screencasts, you will also be required to write your own Python scripts from scratch for completing a data analysis project on income data.

Who is the target audience?
  • Those who come from any technology field that deals with any kind of data.
  • Those who want to leverage the power of the Python programming language for handling data.
  • Those who need to learn Python basics and want to quickly advance their skills by learning how to perform data cleaning, analysis and visualization with Python - all in one single course.
  • Those who want to switch from programming languages such as Java, C, R, Matlab, etc. to Python.
Students Who Viewed This Course Also Viewed
What Will I Learn?
Build 10 advanced Python scripts which together make up a data analysis and visualization program.
Solve six exercises related to processing, analyzing and visualizing US income data with Python.
Learn the fundamental blocks of the Python programming language such as variables, datatypes, loops, conditionals, functions and more.
Use Python to batch download files from FTP sites, extract, rename and store remote files locally.
Import data into Python for analysis and visualization from various sources such as CSV and delimited TXT files.
Keep the data organized inside Python in easily manageable pandas dataframes.
Merge large datasets taken from various data file formats.
Create pivot tables in Python out of large datasets.
Perform various operations among data columns and rows.
Query data from Python pandas dataframes.
Export data from Python into various formats such as TXT, CSV, Excel, HTML and more.
Use Python to perform various visualizations such as time series, plots, heatmaps, and more.
Create KML Google Earth files out of CSV files.
View Curriculum
  • A working computer (Windows, Mac, or Linux)
  • No prior knowledge of Python is required
Curriculum For This Course
Expand All 70 Lectures Collapse All 70 Lectures 05:20:46
Getting Started
4 Lectures 22:39

In this very first video you will find out what you will learn in the course so that you can make the most of it.

Preview 03:09

In this lecture you will see an example of using Python for reading, manipulating and visualizing data from an Excel file. This will give you a feeling of how Python is used for data analysis and visualization.

Preview 08:03

You will learn how to install Python through the Anaconda package which is a complete package that will not only install Python into your computer, but also other libraries needed for data analysis and visualizations such as pandas, matplotlib, numpy, scipy, etc.

Installing Python and Python libraries

You will learn how to use the Spyder environment to write scripts of Python code and also learn how to use iPython which is an enhanced interactive shell where you type in and execute Python code. iPython is tailored for data analysis applications

Python editors - Spyder and iPython
Python Basics
10 Lectures 32:11

Get to know with the content of this section.

Section introduction

You will be able to declare variables in Python and assign different data types to them, such as strings, integers, and floats.


You will learn about strings and the different number data types used in Python and how to perform operations with them.

Strings and numbers

You will be able to evaluate your knowledge on how to create variables and use strings and numbers.

Variables, strings, and numbers.
4 questions

You will learn how to write a small conditional program using the if-else clause. You will also learn about the crucial concept of indentation.

If, else, and indentation

You will learn what built-in functions are and also how to create your own customized Python functions and how to call them for generating their output.


Storing a function for later use
1 page

Let's now make sure you know how write conditional blocks and custom functions.

Conditionals and functions
4 questions

You will understand the structure of list and tuple datatypes and learn how to create them in Python.


You will understand the structure of set and dictionary datatypes and learn how to create them.


You will be able to perform various operations with lists, tuples and strings. You will learn how to use indexing, access list, tuple, and string elements and perform slicing operations.

Working with sequences

You will learn how to use the for loop in Python and also how to integrate an if statement inside a for loop block.


You will solve some Python quizzes on lists, tuples, dictionaries, strings and iterations.

Sequences, collections, strings and iterations
4 questions
Working with Files
8 Lectures 24:13
Section introduction

You will learn how to create and open files from within Python and write lines of text inside TXT files.

Working with files

You will learn the with method which is a great shortcut for handling files in Python.

Handling files easily

3 pages

Exercise solution
1 page

You will learn how create new directories, how get and change the current working directory, and how to get a list of files contained in a directory.

Working with directories

You will learn how to split file names from full file paths and create new directories if a directory path does not exits.

Working with file paths - advanced

You will enforce your iterating skills by learning how to use the for loop for accessing and manipulating multiple files at once from within Python.

Iterating through files
Downloading Files from FTP Sites
7 Lectures 38:14

Short lecture introducing you to this section of the course.

Section introduction

You will learn how to write Python code that establishes a connection to an FTP server and accesses the files of the FTP site.

Navigating through FTP directory trees with Python

You will learn how to use the Spyder editor for executing complete scripts of Python code.

Storing Python code

You will learn how to create a custom FTP function that logs in to an FTP site and generates a list of file names contained in the site.

Creating an FTP function

You will learn the Python code that downloads a single file from an FTP site.

Downloading an FTP file

Something to keep in mind for the next lecture.

About the next lecture

Here we start building our data analysis program.

In this particular lecture, we will build an FTP function that will login to the FTP site, and download a given range of files from the site.

Practice No.1: Creating an FTP File Downloader
Working with Archive Files
3 Lectures 11:30

You will learn how to extract various types of archive files using the patool library and the for loop.

Extracting ZIP, TAR, GZ and other archive file formats

You will learn how to extract RAR archive files.

Extracting RAR files

Here you will write a function that will fetch the archive files downloaded by the FTP function and it will extract them all in a local directory.

Practice No.2: Creating a Batch Archive Extractor
Working with TXT and CSV Files
8 Lectures 18:59

Short lecture introducing you to this section of the course.

Section introduction

You will learn how to easily read CSV and delimited TXT files using the pandas library and use their data inside Python.

Reading delimited TXT and CSV files

Reading Excel files

You will learn how to export data from Python to CSV and TXT files.

Exporting data from Python to files

You will learn how to open data from TXT files which columns are delimited by a certain width.

Reading fixed width TXT files

You will learn how to quickly export a pandas dataframe into an HTML file.

Exporting data back to HTML and other file formats

Data Analysis Exercise: 1 of 6
5 pages

Solution: 1 of 6
1 page
Getting Started with Pandas
4 Lectures 11:13

We already used the pandas library in the previous section. Here you will be given an official tour to the pandas data analysis library.

Get started with Pandas

You will create a function that grabs all the TXT files of a folder, opens each of them in Python as dataframes, adds a column in each dataframe and exports the updated dataframes back to CSV files.

Practice No.3: Calculating and Adding Columns to CSV Files

Data Analysis Exercise: 2 of 6
4 pages

Solution: 2 of 6
1 page
Concatenating and Joining Tables of Data with Pandas
8 Lectures 15:21

You will write a function that gets all the CSV files and concatenates them vertically using the pandas concatenate function by creating a single CSV containing everything.

Practical No.4: Concatenating multiple CSV files

Data Analysis Exercise: 3 of 6
3 pages

Solution: 3 of 6
1 page

You will write a function that will join columns of a pandas dataframe to another dataframe.

Practice No. 5: Joining Data Based on a Matching Column

Solution: 4 of 6
1 page

Data Analysis Exercise: 5 of 6
4 pages

Solution: 5 of 6
Data Aggregation
1 Lecture 07:41

You will learn how to use the pandas pivot function by creating a pivoted dataframe out of a large CSV file by aggregating the data values.

Practice No. 6: Pivoting Large Amounts of Data
Visualizing Data
5 Lectures 27:02

You will learn how to use the visualization features available in Python and generate graphs using the matplotlib and the seaborn libraries.

Data visualization with Python

You will expand your knowledge on performing visualizations of different kinds out of pandas dataframes and adding labels and legends to the generated graphs.

Preview 12:23

You will learn create a function that will access the pivoted dataframe and it will generate a graph representing the data, and save the graph inside a PNG image file.

Practice No. 7: Producing Image Files

Data Analysis Exercise: 6 of 6
4 pages

Solution: 6 of 6
1 page
3 More Sections
About the Instructor
4.3 Average rating
4,036 Reviews
39,004 Students
6 Courses
Python and GIS Expert, Founder of

Ardit received his master's degree in Geospatial Technologies from the Institute of Geoinformatics at University of Muenster, Germany. He also holds a Bachelor's degree in Geodetic Engineering.

Ardit offers his expertise in Python development on Upwork where he has worked with companies such as the Swiss in-Terra,  Center for Conservation Geography, and Rapid Intelligence. He is the founder of PythonHow where he authors written tutorials about the Python programming language. 

Report Abuse