Intermediate Python for Data-Driven Research

Advance your Python skills with object-oriented programming, advanced data structures, and research libraries. Master APIs, custom classes, and complex problem-solving for data-driven research.

Workshop Description

This intensive 3-day workshop builds on basic Python knowledge to tackle real-world research challenges. Designed for researchers who understand Python fundamentals, this course focuses on advanced data structures, object-oriented programming, and powerful libraries essential for research computing.

You'll master advanced Python concepts including classes and objects, advanced data manipulation techniques, working with APIs, and leveraging Python's extensive ecosystem of research libraries. The workshop emphasizes practical problem-solving and introduces you to tools that will dramatically increase your research productivity.

By the end of this workshop, you'll be proficient in designing robust Python programs, working with complex data sources, creating custom classes for your research domain, and leveraging third-party libraries to solve sophisticated problems. You'll have the skills to automate complex research workflows and handle large-scale data processing tasks.

Instructor

Dr Victor Gambarini

Course Fee

$349.0

Maximum Seats

20

Duration

3 half-days

Select Session
Time
20:04 - 20:04
Select Timezone

A comprehensive 3-day journey into intermediate Python programming for research applications

Format: Each day is approximately 4 hours with hands-on exercises using Google Colab

Prerequisites: Basic Python knowledge required - variables, functions, loops, and basic data structures. Equivalent to our Python Fundamentals course

What you'll learn: Object-oriented programming, advanced data structures, working with APIs, custom classes for research, and leveraging Python's scientific ecosystem

Materials provided: All code examples, datasets, API keys for practice, and project templates. Lifetime access to all materials and resources

Day 1: Advanced Data Structures & Algorithms

Master complex data organization and efficient algorithms

Review & Advanced Lists (45 min): List comprehensions, nested structures, and efficient list operations for large datasets

Advanced Dictionaries (1 hr): Dictionary comprehensions, nested dictionaries, defaultdict and Counter from collections module, and practical research applications

Sets & Tuples Deep Dive (45 min): Set operations for data analysis, when to use tuples vs lists, and named tuples for structured data

Algorithm Fundamentals (1 hr): Searching and sorting algorithms, time complexity basics, and choosing efficient approaches for research data

Regular Expressions (30 min): Pattern matching in text data, cleaning messy datasets, and extracting information from unstructured sources

Day 2: Object-Oriented Programming

Design reusable, maintainable code with classes and objects

Classes & Objects Basics (1 hr): Understanding OOP concepts, creating classes, attributes and methods, and the __init__ method

Class Design for Research (1 hr): Designing classes for research entities (Sample, Experiment, Dataset), encapsulation principles, and method organization

Inheritance & Polymorphism (1 hr): Creating class hierarchies, method overriding, and designing flexible research frameworks

Special Methods & Properties (1 hr): Magic methods (__str__, __len__, etc.), property decorators, and creating intuitive class interfaces

Day 3: APIs, Libraries & Advanced Topics

Connect to external data sources and leverage Python's ecosystem

Working with APIs (1.5 hrs): HTTP requests with requests library, handling JSON data, authentication basics, and accessing research databases and web services

Essential Libraries Overview (1 hr): Introduction to NumPy for numerical computing, datetime for time series, pathlib for file handling, and choosing the right tool for your research

Advanced Functions (45 min): Lambda functions, map/filter/reduce, decorators basics, and functional programming concepts for data processing

Project & Integration (45 min): Build a complete research tool that combines OOP, API access, and data processing, with emphasis on code organization and documentation