Learn Python fundamentals, NumPy, Pandas, SciPy, Statsmodels and LinearModels in one continuous path.
One repository for a complete scientific Python learning path.
This project is a Chinese-language tutorial that connects the Python scientific stack into a single curriculum instead of treating each library as an isolated collection of API notes.
- Continuous path: Python → NumPy → Pandas → SciPy → Statsmodels → LinearModels.
- 100+ Markdown lessons/docs and 25 Jupyter Notebooks.
- Modern APIs: organized for the 2026 scientific Python ecosystem and avoids known removed/deprecated teaching patterns.
- Research-oriented coverage: numerical methods, optimization, statistics, regression, time series, panel data, instrumental variables, SUR/3SLS and Fama–MacBeth.
- Reproducible examples: fixed random seeds and local/generated datasets whenever practical.
- Automated validation: repository structure, local Markdown links, Notebook JSON and obsolete API patterns are checked in CI.
Python Fundamentals
↓
NumPy Numerical Computing
↓
Pandas Data Analysis
↓
SciPy Scientific Computing
↓
Statsmodels Statistical Modeling
↓
LinearModels Panel & Econometric Models
git clone https://github.com/hujinghaoabcd/python-scientific-tutorial.git
cd python-scientific-tutorial
python -m venv .venvWindows PowerShell:
.\.venv\Scripts\Activate.ps1
python -m pip install -U pip
pip install -r requirements.txt
jupyter labmacOS / Linux:
source .venv/bin/activate
python -m pip install -U pip
pip install -r requirements.txt
jupyter lab| Stage | Module | Topics | Start |
|---|---|---|---|
| 01 | Python | syntax, data structures, functions, modules, files, exceptions, OOP, projects | Open |
| 02 | NumPy | ndarray, indexing, broadcasting, vectorization, statistics, random numbers, linear algebra, I/O | Open |
| 03 | Pandas | Series, DataFrame, cleaning, merge, groupby, time series, performance | Open |
| 04 | SciPy | interpolation, optimization, statistics, integration, ODEs, linear algebra, signal, spatial, sparse matrices, ndimage | Open |
| 05 | Statsmodels | OLS, GLM, mixed models, robust regression, time series, tests, survival analysis | Open |
| 06 | LinearModels | panel data, fixed/random effects, IV/2SLS, asset pricing, SUR/3SLS, Fama–MacBeth | Open |
Corrections, compatibility updates, clearer explanations and new scientific-computing examples are welcome. Please read CONTRIBUTING.md before opening a pull request.
If this tutorial is useful to you, consider starring the repository so you can find it again and more scientific Python learners can discover it.
This is a teaching project, not a replacement for the official documentation of the libraries covered. For version-specific behavior and research-grade model specifications, always consult the corresponding official documentation and methodological literature.