A hands-on learning repository for numerical computing with NumPy
Installation • Topics • Resources • About
This repository documents everything I've learned while working with NumPy. From creating my first array to implementing advanced operations like broadcasting, vectorized computations, and statistical functions, each notebook captures what I've practiced and learned through hands-on exploration.
The core philosophy is learning by experimenting with concepts, visualizing results using Matplotlib, and expressing mathematical ideas clearly with LaTeX. I've used Ruff to maintain clean code and uv for efficient dependency management, keeping everything fast and reproducible.
- Python 3.13 or above
- Git
Clone the repository:
git clone https://github.com/Tams3d/numpy-journey.git
cd numpy-journeyCreate and activate a virtual environment (highly recommended):
python -m venv .venv
# Windows
.venv\Scripts\activate
# macOS/Linux
source .venv/bin/activateInstall dependencies:
uv syncThis automatically installs numpy, matplotlib, ruff, and all other dependencies specified in pyproject.toml.
- Array Creation - Initialization methods and array types
- Array Operations - Basic operations and properties
- Indexing & Slicing - Accessing and modifying array elements
- Broadcasting - Efficient operations on arrays of different shapes
- Vectorization - Optimized computations without explicit loops
- Sorting & Filtering - Organizing and selecting data
- Array Manipulation - Stacking, splitting, and reshaping
- Mathematical Functions - Advanced numerical operations
- Statistical Operations - Data analysis and aggregations
- Set Operations - Working with unique elements and intersections
- Custom Functions - User-defined operations and utilities
-
NumPy Tutorial – CampusX (Hindi)
Watch on YouTube - Beginner-friendly, practical tutorial for mastering NumPy for data science. -
Introduction to Numerical Computing with NumPy – Alex Chabot-Leclerc (English)
Watch on YouTube - A comprehensive introduction to numerical computing using NumPy, focusing on array operations and performance. -
Advanced NumPy – Juan Nunez-Iglesias (English)
Watch on YouTube - A deep dive into advanced NumPy topics, including broadcasting, memory layout, and performance optimizations.
I'm 18 and deeply interested in AI, machine learning, and data science. I've realized that the best way to learn is by building things and experimenting with real problems rather than just reading theory.
Apart from programming, I enjoy creative work like photo and video editing, and 3D design using Blender. I often combine these creative interests with technical skills to build useful tools and workflows.
Right now, I'm focusing on deep learning and generative AI. My long-term goal is to contribute to research and open-source projects in the AI domain. This repository is part of building that foundation - understanding core tools like Pandas is essential for any serious work in data science or ML.
This project is licensed under the MIT License. See the LICENSE file for details.
⭐ If you find this repository helpful, please consider giving it a star!
This is primarily a learning repository. The code reflects my learning process and may not always follow production-level best practices. The focus is on understanding concepts through hands-on experimentation.
Made with 💙 by Tamil Selvan