Course Outline
Introduction
- Python's versatility: from data analysis to web crawling, Python offers a wide range of applications that can enhance various processes for government.
Python Data Structures and Operations
- Integers and floats
- Strings and bytes
- Tuples and lists
- Dictionaries and ordered dictionaries
- Sets and frozen sets
- Data frames (pandas)
- Conversions
Object-Oriented Programming with Python
- Inheritance
- Polymorphism
- Static classes
- Static functions
- Decorators
- Other concepts
Data Analysis with Pandas
- Data cleaning techniques
- Using vectorized data in pandas for efficient processing
- Data wrangling methods
- Sorting and filtering data to extract meaningful insights
- Aggregate operations to summarize data
- Analyzing time series data
Data Visualization
- Plotting diagrams with matplotlib for clear visual representation
- Using matplotlib within pandas for integrated visualization
- Creating high-quality diagrams to support decision-making
- Visualizing data in Jupyter notebooks for collaborative analysis
- Exploring other visualization libraries in Python for diverse needs
Vectorizing Data in Numpy
- Creating and manipulating Numpy arrays for efficient computation
- Common operations on matrices to enhance data processing
- Utilizing ufuncs for optimized performance
- Understanding views and broadcasting in Numpy arrays for memory efficiency
- Avoiding loops to optimize performance
- Using cProfile to identify and address performance bottlenecks
Processing Big Data with Python
- Building and supporting distributed applications with Python to handle large datasets
- Data storage: Working with SQL and NoSQL databases for scalable solutions
- Distributed processing with Hadoop and Spark to manage big data effectively
- Scaling applications to meet growing data demands
Extending Python (and vice versa) with Other Languages
- C# integration for enhanced functionality
- Java integration for cross-platform compatibility
- C++ integration for performance-critical applications
- Perl integration for scripting and automation
- Other language integrations to broaden capabilities
Python Multi-Threaded Programming
- Utilizing modules for multi-threading
- Synchronizing threads for coordinated execution
- Prioritizing tasks in a multi-threaded environment
Data Serialization
- Python object serialization with Pickle to ensure data integrity and portability
UI Programming with Python
- Framework options for building graphical user interfaces (GUIs) in Python
- Tkinter for lightweight and simple GUI applications
- PyQt for more complex and feature-rich GUIs
Python for Maintenance Scripting
- Raising and catching exceptions correctly to ensure robust scripts
- Organizing code into modules and packages for better management
- Understanding symbol tables and accessing them in code for debugging and optimization
- Selecting a testing framework and applying Test-Driven Development (TDD) principles in Python
Python for the Web
- Packages for web processing to streamline web development tasks
- Web crawling techniques for data collection
- Parsing HTML and XML to extract structured information
- Filling web forms automatically to automate repetitive tasks
Summary and Next Steps
Requirements
- Beginner to intermediate programming experience
- Understanding of mathematics and statistics
- Familiarity with database concepts
Audience
- Developers for government
Testimonials (7)
Got to know a lot of new thngs.
Roland - Diehl Aviation
Course - Advanced Python - 4 Days
We covered the topics in sufficient depth, which gave us time to discuss many of them. It was comprehensive enough.
Gergo - Diehl Aviation
Course - Advanced Python - 4 Days
We got a lot of new informations about Python what we will be able to use in our daily work in the future. The exercises were really interesting and challenging enough.
Zsolt - Diehl Aviation
Course - Advanced Python - 4 Days
training was good overall, my favorite part: dashboard & pyqt
Balazs - Diehl Aviation
Course - Advanced Python - 4 Days
Plenty of examples - and the trainer willing to bend backwards to help us with topics we were weaker in.
Wei Lit Teoh - HP Singapore (Private) Ltd.
Course - Advanced Python - 4 Days
Lots of exercises
Fanny Stauffer - UCB Pharma S.A.
Course - Advanced Python - 4 Days
The trainer gave a clear and systematic teaching. He usually gave the reasoning and fundamental knowledge behind the commands. He also gave us time to do the exercises and practice.