About This Course
This 5-day class will get your group up to speed quickly on how to optimize your use of the Python standard language and key Python packages for data exploration, modeling, and analysis.
The Python for Data Analysis class will get you up to speed quickly on how to optimize your use of the Python standard language and key Python packages for data exploration, modeling, and analysis. This curriculum provides an excellent survey understanding of the Python language and its capabilities for all things data, while also providing intensive exposure to the core workhorse tools of NumPy and Pandas that are central to data analysis in Python.
Course Syllabus & Topics
Programming experience in some language (such as R, MATLAB, SAS, Mathematica, Java, C, C++, VB, or FORTRAN) is expected. In particular, participants need to be comfortable with general programming concepts like variables, loops, and functions. Previous Python experience is helpful, but not required.
An understanding of how to use the Python standard library to write programs, access various tools, and document and automate analytical processes.
- Types (strings, lists, dictionaries, and more)
- Control Flow (if-then statements, looping)
- Organizing code (functions, modules, packages)
- Reading and writing files
- Overview of Object-Oriented Programming (OOP)
Introduction to NumPy and 2D plotting. The NumPy package is presented as a tool for rapidly manipulating and processing large data sets. 2D plotting is introduced with matplotlib.
- Understanding the N-dimensional data structure
- Creating arrays
- Indexing arrays by slicing or more generally with indices or masks
- Basic operations and manipulations on N-dimensional arrays
- Plotting with matplotlib
Built on top of NumPy arrays, the Python Data Analysis Library (Pandas) is a powerful and convenient package for dealing with tabular datasets. Participants will learn about its powerful data aggregation and reorganization capabilities for data set explorations, including support for labeling data along each dimension, dealing with missing values, and time series manipulations.
An expert instructor will support students as they work through a typical real-world data analysis project step-by-step using Pandas. This course develops the deep knowledge and skills that will enable students to tackle their own projects with Pandas immediately when they get back to work on Monday morning.
- Reading and writing data from local files (.txt,.csv,.xls, .json, etc)
- Reading data from remote files
- Scraping tables from web pages (.html)
- Making the most of the powerful read_table method
- Working with Pandas data structures: Series and DataFrames
- Accessing your data: indexing, slicing, fancy indexing, boolean indexing
- Data wrangling, including dealing with dates and times and missing datas
- Adding, dropping, selecting, creating, and combining rows and columns
- Database access with DB-API2 and SQLAlchemy
- Executing SQL commands from Pandas
- Loading database data into a DataFrame
- Combining and manipulating DataFrames: merge, join, concatenate
- Understanding the structure of a Figure
- Data visualization: scatter plots, line plots, box plots, bar charts,and histograms with matplotlib
- Customizing plots: important attributes and arguments
- Split-apply-combine with DataFrames
- Data summarization and aggregation methods
- Pandas powerful groupby method
- Reshaping, pivoting, and transforming your data
- Simple and rolling statistics
- Deep learning of the data analysis tools through lectures, Q&A, and hands-on exercises
- Develop transferable skills through application to authentic data sets
- Predict the future with time series analysis
- And more!
Open Class Schedule
Open Class Schedule
Onsite corporate classes are also available. Discounts are available for 3 or more attendees and academics currently at a degree-granting institution. Contact us with the form to the right to learn more.
The 3 day Pandas Mastery Workshop is an alternative course for those who already have both (1) current working knowledge of programming in the Python standard language (data structures, control flow, assignment, functions, and package access) and (2) familiarity with array programming in NumPy.
There are no classes scheduled at this time. To request one, please contact us using the form to the right.
I am worried that your training is only useful to people who are committed to using Enthought software products. How much of your training is usable without Enthought software?
100%. Our training teaches students how to write software with Python and solve problems using its scientific packages, not how to use proprietary software. Everything you will learn uses free and open source software. We provide Enthought Canopy (our integrated analysis environment and Python distribution) to training participants to ensure they have all of the tools and Python packages they need to complete the training and that the tools are as easy as possible to install. While participants sometimes do use other editors, package managers, and Python distributions, we strongly recommend participants use Canopy during the training. With Canopy we can ensure that you can easily install everything you need for the course out of the box and we can provide technical support (which we unfortunately cannot provide for other tool sets).
I use / will be using Anaconda Python. Will I still benefit from this course?
Absolutely. Our training materials work with any Python distribution (such as Anaconda), as long as you also have all of the necessary packages, a text or code editor, package manager, interactive IPython shell, and Jupyter notebooks installed.
Is a class completion certificate provided?
Yes, a class completion certificate is provided for the Python for Data Analysis class.
Have a question that isn’t answered here? Contact us or call 512.536.1057.
Python for Data Analysis Attendee