Welcome to PyPro-SCiDaS

Course Index

PyPro-SCiDaS

An Initiation to Programming using Python (Init2Py)

📚 Course Index & Navigation

Python Proficiency for Scientific Computing and Data Science

🧑‍🏫 Instructor: Yaé Gaba 📘 Course: Init2Py 📅 Date: October 2025 🎓 Semester: Semester 1, 2025–2026
🏛️ AI Research and Innovation Nexus for Africa (AIRINA Labs), AI.Technipreneurs, Bénin
& African Center for Advanced Studies (ACAS), Cameroon
✉️ yaeulrich.gaba@gmail.com   |   🔗 LinkedIn | 🌐 Website

Welcome to PyPro-SCiDaS#

PyPro-SCiDaS (Python Proficiency for Scientific Computing and Data Science) is a structured, hands-on course designed to take you from zero programming experience to proficiency in Python for scientific computing and data science.

The course features 16 interactive Jupyter notebook lectures that build foundational skills progressively. You’ll start by navigating the terminal and writing your first Python script, then advance through object-oriented programming and comprehensions, before diving into data analysis with NumPy, Matplotlib, and Pandas.

Navigating the course: Click any lecture title below to open it directly. Each lecture includes navigation links to help you move through the course sequentially.

Quick Navigation

  1. Part I — Foundations (Lectures 0–4)
  2. Part II — Core Programming (Lectures 5–9)
  3. Part III — Scientific Computing (Lectures 10–12)
  4. Part IV — Advanced Python & Data Analysis (Lectures 13–17)

📗 Part I — Foundations

Getting started with the terminal, Python basics, and version control

🐚#0The ShellTerminal, filesystem, pipes, grep, find
🐍#1Introduction to PythonSyntax, expressions, data types, print/input
📦#2Variables, Types, and AssignmentDynamic typing, int/float/complex/bool, casting
📝#3Strings and FilesString methods, f-strings, file I/O, pathlib
💻#4Version Control with Gitinit, add, commit, branches, merge, diff

📘 Part II — Core Programming

Data structures, control flow, functions, and error handling

📦#5Iterable Objects or ContainersLists, tuples, dicts, sets, mutability
🔀#6Flow Control and Loopsif/elif/else, for, while, break/continue
⚙️#7Functions, Modules, and Packagesdef, scope, *args/**kwargs, imports
🔄#8Recursion and LambdaRecursive algorithms, lambda, map/filter
🐛#9Errors and DebuggingExceptions, try/except, pdb, tracebacks

📙 Part III — Scientific Computing

Numerical arrays, visualization, and high-performance computing

📊#10NumPy — Part 1Arrays, indexing, slicing, reshaping
📊#11NumPy — Part 2Ufuncs, broadcasting, vectorization
🎨#12MatplotlibLine/scatter/bar/histogram, subplots, LaTeX

📕 Part IV — Advanced Python & Data Analysis

Object-oriented design, Pythonic idioms, and real-world data analysis

🏗️#13Object-Oriented ProgrammingClasses, inheritance, encapsulation, polymorphism
💨#14List Comprehensions & GeneratorsList/dict/set comprehensions, generators, yield
🐼#15Pandas for Data AnalysisSeries, DataFrames, CSV I/O, groupby, merge
🎀#16Decorators & Context ManagersClosures, @property, functools, with statement
📂#17Data Formats & APIsJSON, CSV, YAML, TOML, requests, web APIs

🗺️ Learning Path

Part I
Foundations
Lectures 0–4
Part II
Core Programming
Lectures 5–9
Part III
Scientific Computing
Lectures 10–12
Part IV
Advanced Python
Lectures 13–17

Prerequisites & Setup#

No prior programming experience is needed! This course is designed for absolute beginners. You will need:- Python 3.8+ installed on your system- Jupyter Notebook or JupyterLab- Later lectures also use NumPy, Matplotlib, and Pandasbash# Install everything you needpip install jupyter numpy matplotlib pandasTo get started, click on Lecture 0 above, or use the link below:

PyPro-SCiDaS • Python Proficiency for Scientific Computing and Data Science

Built with ❤️ using Jupyter Notebooks

© 2025 Yaé Gaba — CC BY-NC 4.0