4- or 5-Day Course

This four- or five-day course is tailored for scientists and engineers. This course includes the 3-day Introductory Python Programming Using Anaconda plus 1 or 2 additional days for advanced topics and exercises. Additional days focus on the most relevant scientific and engineering programming problems, whether in an exploratory context or in producing reusable software libraries.

Students will learn how to design and develop effective and efficient technical computing programs in Python for scientific and engineering applications using the Anaconda platform.

Topics covered include: array-based computation with high-dimensional data; manipulating labeled tabular data; statistics, linear algebra, optimization, interpolation, and other advanced mathematical computation; and frameworks for constructing visualizations. The expanded version of this course may include parallel or distributed computing, machine learning, image processing, techniques for performance optimization, working with large data sets, advanced visualization, or domain-specific problems.

What you’ll learn

  • Create basic, intermediate, and advanced Python programs
  • Work with a wide variety of data sources
  • Create mathematical and predictive models
  • Leverage Big Data technologies to divide and conquer workloads

Topics covered in 4-day format

  • Introduction to Python
    • Python language basics 
    • Data types & data structures
    • Functions, iterators, scoping
    • Exceptions, imports, classes, modules & scripts
  • Data formats & storage
  • Fast numeric arrays in Python introduction
  • Labeled, tabular data
  • Visualization

Additional topics covered in 5-day format

  • Big data
  • Advanced Python
  • Optimizing performance
  • Machine learning
  • Data science

Who should attend

This course is for both scientists and engineers who need to explore and manipulate data sets to get value from the data. In both cases, students will quickly get up to speed in getting their work done using Python.

This course has a limit of 20 participants.


  • Programming experience – This is not a programming course for beginning programmers. Students must have programming experience with at least one other programming language (e.g., C/C++, Java, Matlab, Perl, etc.). Students must be familiar with basic concepts such as variables, loops, conditionals, functions, and data structures. Additionally, participants should have an acquaintance with working with files, directories (folders), text editors, command-line shells, environment settings, internet connections, and other essential aspects of using a computer for software development.

  • Lab work – Labs are completed using Anaconda, the leading modern open source analytics platform powered by Python. Free Anaconda downloads are available for Apple OS X®, Microsoft Windows®, and most Linux distributions.