Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gyr0byte/ML-Foundations

Open more actions menu

Repository files navigation

🚀 Machine Learning Fundamentals

A comprehensive, hands-on learning repository documenting the journey from Python and NumPy fundamentals to practical machine learning implementation.

Python Jupyter NumPy Status

📋 Table of Contents

📚 Overview

Notebook-first workspace for building strong ML foundations with short, focused lessons and runnable examples.

Current Phase: Foundation For ML ✨

Current focus: Practical ML projects building on statistics knowledge.

✨ Features

  • 44 notebooks — 13 NumPy, 3 exercises, 10 Pandas, 2 Pandas exercises, 7 data viz, 6 statistics, 3 foundation projects
  • Hands-on — notebook-first, progressive difficulty
  • Reproducible — pinned dependencies and setup steps

🔧 Prerequisites & Setup

Requirements

  • Python 3.8+, pip, and Jupyter Notebook/Lab

Installation

  1. Clone

    git clone https://github.com/gyr0byte/ML-Foundations.git "Machine Learning"
    cd "Machine Learning"
  2. Create a virtual environment (recommended)

    # Windows
    python -m venv .venv
    .venv\Scripts\activate
    
    # macOS/Linux
    python -m venv .venv
    source .venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt
  4. Launch Jupyter

    jupyter notebook

Getting Started

  • Start at NumPy/1_numpy_arrays.ipynb, finish NumPy, then move to Pandas.
  • Run cells top-to-bottom and experiment with the examples.
  • Move to Data Visualization with Data Visualization/matplotlib.ipynb.
  • Continue with Data Visualization/Distributionplot.ipynb.
  • Continue with Data Visualization/Categoricalplot.ipynb.
  • Continue with Data Visualization/Matrixplot.ipynb.
  • Continue with Data Visualization/Regression.ipynb.
  • Continue with Data Visualization/plotlyandcufflinks.ipynb.
  • Continue with Data Visualization/IPL_capstone_project.ipynb.
  • Move to Statistics with Statistics/1_outliers.ipynb.
  • Continue with Statistics/2_Ztest.ipynb, Statistics/3_Ttest.ipynb, Statistics/4_Two_sample_T_test.ipynb, Statistics/5_chi_square_test.ipynb, and Statistics/6_ANNOVA_test.ipynb.
  • Move to Foundation For ML with Foundation For ML/1_foundation_project.ipynb and Foundation For ML/2_foundation_project.ipynb.
  • Continue with Foundation For ML/3_FORD_car_price_prediction.ipynb.

📖 Learning Modules

NumPy Fundamentals

  • 13 core notebooks + 3 exercises in NumPy/.

Pandas Fundamentals

  • 10 core notebooks in Pandas/, including IPL analysis, company data, and Titanic survival analysis.

Pandas Exercises

  • 2 practice notebooks in Pandas/pandas_exercise/.

Data Visualization

  • 7 notebooks in Data Visualization/ covering Matplotlib basics, distribution plots, categorical plots, matrix plots, regression plots, Plotly/Cufflinks, and an IPL capstone.
  • Assets: Data Visualization/basic_plot.png, Data Visualization/zoro.jpg.

Statistics

  • 6 notebooks in Statistics/ covering outlier detection and handling, Z-test, T-test, Two-sample T-test, Chi-square test, and ANOVA test hypothesis testing.

Foundation For ML

  • 3 project notebooks in Foundation For ML/ applying statistical and exploratory analysis to real-world datasets.

📁 Project Structure

Machine Learning/
|-- README.md                               # Project overview and guide
|-- requirements.txt                        # Python dependencies
|-- LICENSE                                 # License for reuse and distribution
|-- .gitignore                              # Git ignore patterns
|-- Data Visualization/                     # Data visualization modules
|   |-- matplotlib.ipynb                    # Matplotlib basics and plots
|   |-- Distributionplot.ipynb              # Distribution plots
|   |-- Categoricalplot.ipynb               # Categorical plots
|   |-- Matrixplot.ipynb                    # Matrix plots
|   |-- Regression.ipynb                    # Regression plots
|   |-- plotlyandcufflinks.ipynb            # Plotly and Cufflinks
|   |-- IPL_capstone_project.ipynb          # IPL capstone project
|   |-- IPL.csv                             # IPL dataset
|   |-- basic_plot.png                      # Sample plot image asset
|   `-- zoro.jpg                            # Image asset used in notebooks
|-- NumPy/                                  # NumPy fundamentals modules
|   |-- 1_numpy_arrays.ipynb                # Arrays basics
|   |-- 2_arrays_types.ipynb                # Data types (dtypes)
|   |-- 3_dimension_shapes.ipynb            # Dimensions & shapes
|   |-- 4_indexing_slicing_iteration.ipynb  # Advanced indexing
|   |-- 5_statistics.ipynb                  # Statistical operations
|   |-- 6_broadcasting_vectorize.ipynb      # Broadcasting & vectorization
|   |-- 7_boolean_arrays.ipynb              # Boolean indexing
|   |-- 8_linear_algebra.ipynb              # Linear algebra operations
|   |-- 9_size_of_objectsInMemory.ipynb     # Memory size exploration
|   |-- 10_useful_numpy_function.ipynb      # Useful NumPy utilities
|   |-- 11_numpy_operations.ipynb           # NumPy operations overview
|   |-- 12_Reshaping_inDepth.ipynb          # Reshaping deep dive
|   |-- 13_plotting_graphs_numpy.ipynb      # Plotting graphs with NumPy
|   `-- numpy_exercises/                    # Practice notebooks
|       |-- general_qns.ipynb               # Mixed practice questions
|       |-- nepali_cricket_score.ipynb      # Practice with real-world data
|       `-- valid_sudoku.ipynb              # NumPy practice exercise
|-- Pandas/                                 # Pandas fundamentals modules
|   |-- 1_series.ipynb                      # Series basics
|   |-- 2_DataFrames.ipynb                  # DataFrames basics
|   |-- 3_Missing_Data.ipynb                # Missing data handling
|   |-- 4_Merging_Joining_Concatination.ipynb # Merging and joining
|   |-- 5_GroupByAggregation.ipynb          # GroupBy and aggregation
|   |-- 6_pivot_tables.ipynb                # Pivot tables and reshaping
|   |-- 7_Operations.ipynb                  # Pandas operations
|   |-- 8_ipl_analysis.ipynb                # IPL data analysis
|   |-- 9_company.ipynb                     # Company data analysis
|   |-- 10_titanic.ipynb                    # Titanic survival analysis
|   |-- deliveries.csv                      # IPL deliveries dataset
|   |-- ipl_matches.csv                     # IPL matches dataset
|   |-- Fortune_500_Companies.csv           # Company dataset
|   |-- titanic_data.csv                    # Titanic passenger dataset
|   `-- pandas_exercise/                    # Pandas practice notebooks
|       |-- Countries.csv                   # Sample dataset
|       |-- Countries.ipynb                 # Country data practice
|       |-- feature_extraction.ipynb        # Feature extraction practice
|       `-- topanime.csv                    # Sample dataset
|-- Statistics/                             # Statistical methods modules
   |-- 1_outliers.ipynb                    # Outlier detection and handling
   |-- 2_Ztest.ipynb                       # Hypothesis testing: Z-test
   |-- 3_Ttest.ipynb                       # Hypothesis testing: T-test
   |-- 4_Two_sample_T_test.ipynb           # Hypothesis testing: Two-sample T-test
   |-- 5_chi_square_test.ipynb             # Hypothesis testing: Chi-square test
   `-- 6_ANNOVA_test.ipynb                 # Hypothesis testing: ANOVA test
`-- Foundation For ML/                      # Foundation ML projects
   |-- 1_foundation_project.ipynb          # Foundation ML project 1
   |-- 2_foundation_project.ipynb          # Foundation ML project 2
   |-- 3_FORD_car_price_prediction.ipynb    # Ford car price prediction project
   |-- ford.csv                             # Ford car dataset
   |-- heart.csv                            # Heart disease dataset
   `-- insurance.csv                        # Insurance dataset

🗺️ Roadmap

Current Phase ✅

  • NumPy fundamentals (13 modules)
  • NumPy exercises (3 notebooks)
  • Pandas fundamentals (10 notebooks)
  • Pandas exercises (2 notebooks)
  • Data visualization (7 notebooks)
  • Statistical methods (6 notebooks)

Upcoming Phases 🚧

  • [/] Foundation For ML — Practical ML projects with real datasets (3 notebooks)
  • Supervised Learning — Regression and classification with Scikit-Learn
  • Unsupervised Learning — Clustering and dimensionality reduction
  • Mini-Projects — End-to-end projects combining all skills
  • Deep Learning — Introduction to TensorFlow/PyTorch

🏆 Best Practices

  • Follow PEP 8 and use descriptive names
  • Keep cells focused with short markdown context
  • Pin dependencies in requirements.txt

🤝 Contributing

Suggestions and improvements are welcome.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/improvement)
  3. Make your changes
  4. Commit your changes (git commit -am 'Add improvement')
  5. Push to the branch (git push origin feature/improvement)
  6. Open a Pull Request

📄 License

This project is licensed under the MIT License — see the LICENSE file for details.


Happy Learning! 🎓

Last Updated: July 2026

About

The foundations of ML, built from scratch — one notebook at a time. NumPy → Pandas → Visualization → Statistics → ML → Deep Learning.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages

Morty Proxy This is a proxified and sanitized view of the page, visit original site.