Berdasarkan TIOBE Index, Python adalah bahasa pemrograman yang paling populer ke-4 dari 100 bahasa pemrograman lainnya. Program yang ditulis menggunakan bahasa pemrograman Python dapat dijalankan di hampir semua sistem operasi (Unix, Windows, Mac OS, dll), termasuk untuk perangkat-perangkat mobile. Oleh karena itu Python mampu menjadi bahasa pemrograman yang populer untuk digunakan.
Python didesain untuk mudah dipelajari dan menyenangkan untuk digunakan. Sebagai bahasa yang digunakan secara dinamis, Python sangat fleksibel. Ini berarti tidak ada aturan yang terlalu ketat tentang cara membangun fitur dan memiliki lebih banyak fleksibilitas dalam memecahkan error menggunakan metode yang berbeda. Selain itu, Python juga lebih mentoleransi error yang muncul, sehingga masih memungkinkan untuk mengkompilasi dan menjalankan program sampai error diperbaiki.
Training ini mempelajari bagaimana menggunakan bahasa pemrograman python. Dengan training ini diharapkan peserta dapat belajar cara membuat video game sederhana, menggunakan teknik visualisasi data untuk membuat grafik dan chart, dan membangun aplikasi web yang interaktif berbasis Python. Python Fundamentals mengajari para pemula tentang hal penting dari Python dengan cepat sehingga mereka dapat membangun program praktis dan mengembangkan teknik pemrograman yang baik.
OBJECTIVES
- Memahami Bahasa pemrograman Python
- Mampu membuat dan mengembangkan aplikasi web kecil yang disebut Learning Log
- Mampu menggunakan Teknik visualisasi data untuk membuat grafik dan chart
- Mampu membangun aplikasi web yang interaktif berbasis Python
PREREQUISITES
Tidak ada training khusus yang dipersyaratkan
CONTENT
1. Current Status of Python
1.1. PEP Documents
1.2. Active Communities
1.3. New Things in Python
1.4. Python in Comparison with Other Languages
2. Modern Python Development Environments
2.1. Python’s Packaging Ecosystem
2.2. Isolating the Runtime Environment
2.3. Application-level Environment Isolation
2.4. System-level Environment Isolation
2.5. Popular Productivity Tools
3. Interfaces, Patterns, Modularity, and Packaging Libraries
3.1. Data Wrangling and Analyzing iTunes Data
3.2. Inversion of Control and Dependency Injection
3.3. Packaging and Distributing Libraries
4. Concurrency
4.1. Introduction to Concurrency
4.2. Multithreading
4.3. Multiprocessing
4.4. Asynchronous Programming
5. Event-Driven Programming
5.1. Introduction to Event-Driven Programming
5.2. Various styles of event-driven Programming
5.3. Event-driven Architectures
6. Testing and Quality Automation
6.1. The principles of test-driven Development
6.2. Writing Tests with Pytest
6.3. Quality Automation
6.4. Mutation Testing
6.5. Useful Testing Utilities
7. Code Optimization
7.1. Common Culprits for Bad Performance
7.2. Code Profiling
7.3. Reducing Complexity by Choosing Appropriate Data Structures
7.4. Leveraging Architectural Trade-off
8. Fast Array Operations with NumPy, Pandas, Xarray
8.1. Technical Requirement with NumPy
8.2. Rewriting the Particle Simulator in NumPy
8.3. Reaching Optimal Performance with Numexpr
8.4. Working with Database-Style data with Pandas
8.5. High-performance labeled data with Xarray
9. Introduction to Data Science
9.1. The Data Science Origin Story
9.2. The Top Data Science Tools and Skills
9.3. Specializations in and Around Data Science
9.4. Data Science Project Methodologies
10. Preparing Data for Machine Learning: Feature Selection, Feature Engineering, and Dimensionality Reduction
10.1. Types of Machine Learning
10.2. Feature Selection
10.3. Feature Engineering
10.4. Dimensionality Reduction
10.5. Exploratory Data Analysis and basic data cleaning with Pandas
11. Machine Learning for Classification
11.1. Machine Learning Classification and Algorithms
12. Evaluating Machine Learning Classification Models and Sampling for Classification
12.1. Evaluating Classification Algorithm Performance with Metrics
12.2. Sampling and Balancing Classification Data
13. Machine Learning with Regression
13.1. Linear Regression
13.2. Regression Models on Big Data
13.3. Forecasting
14. Tree-Based Machine Learning Models
14.1. Decision Trees
14.2. Feature Importance from Tree-Based Methods
14.3. Boosted Trees: AdaBoost, XGboost, LightGBM, and CatBoost
15. Support Vector Machine (SVM) Machine Learning Models
15.1. How SVMs work
15.2. Using SVMs
16. Clustering with Machine Learning
16.1. Using K-Means Clustering
16.2. Hierarchical clustering
16.3. DBSCAN
16.4. Other Unsupervised Methods
17. Model Explainability and Interpretability
17.1. Introduction extension *.pkl
17.2. Create Model Explainability and Interpretability Data Science with Python
17.3. Used Model Explainability and Interpretability Data Science with Python
17.4. Calling Model Explainability and Interpretability Data Science with Python