Skip to content

πŸ“š Beginner-friendly Python and Pandas tutorials with interactive Jupyter notebooks and sample datasets. Perfect for aspiring data scientists and analysts!

Notifications You must be signed in to change notification settings

Kibet-Rotich/data-science-learning

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

18 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Data Science Learning Lab

A hands-on, beginner-friendly repository for learning Python, Data Analysis, and Machine Learning through well-documented, practical Jupyter notebooks.

Python Pandas Scikit-Learn Jupyter License: MIT


🎯 About This Repository

This repository serves as a learning journey through the entire data science pipeline, starting from Python basics and advancing through data analysis, visualization, and machine learning.

Each folder focuses on a different stage of the learning process β€” containing clear, structured notebooks with step-by-step explanations, visual examples, and practice datasets.

Whether you're a beginner exploring Python, a student learning data analysis, or a self-learner aiming to master machine learning, this repo is your open notebook to follow along, experiment, and grow.


🧩 Learning Path Overview

🐍 1. Python Foundations

Learn programming fundamentals essential for any data scientist.

  • Variables, data types, and operators
  • Control flow, loops, and functions
  • String and dictionary manipulation
  • Basic OOP concepts

πŸ“ Folder: python/
πŸ“˜ Example notebooks: python 101.ipynb, Python 102.ipynb, String manipulation.ipynb


🐼 2. Data Analysis with Pandas

Master data cleaning, exploration, and transformation.

  • Working with DataFrames and Series
  • Data loading and inspection
  • Missing values and outlier handling
  • Grouping, aggregation, and pivot tables
  • Data wrangling and reshaping (wide ↔ long)

πŸ“ Folder: pandas/
πŸ“˜ Example notebooks: Pandas 101.ipynb, data manipulation.ipynb


πŸ“Š 3. Data Visualization

Learn to communicate insights effectively with visuals.

  • Static plots with Matplotlib
  • Aesthetic and statistical plots with Seaborn
  • Annotating and customizing charts
  • Combining visuals for storytelling

πŸ“ Folders:

  • matplotlib/ β†’ matplotlib 101.ipynb
  • seaborn/ β†’ seaborn 101.ipynb

πŸ€– 4. Machine Learning

Build predictive models and understand how machines learn from data.

Includes beginner-friendly notebooks covering:

  • Data preprocessing and pipelines
  • Linear regression from scratch
  • Decision Trees and Ensemble Models
  • Neural Networks, CNNs, and RNNs
  • MNIST digit classification
  • Text generation with RNNs

πŸ“ Folder: Machine Learning/
πŸ“˜ Example notebooks:
Intro_to_Neural_networks.ipynb, Decision Trees.ipynb, intro_to_CNNs.ipynb, Intro_to_RNNs.ipynb


πŸš€ Getting Started

1️⃣ Prerequisites

  • Python 3.8+
  • Jupyter Notebook or JupyterLab
  • Basic familiarity with programming

2️⃣ Installation

# Clone the repository
git clone https://github.com/Kibet-Rotich/data-science-learning.git
cd "DS Learning"

# (Optional) Create a virtual environment
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate

# Install dependencies
pip install -r requirements.txt

# Launch Jupyter Notebook
jupyter notebook

πŸ“ Repository Structure

DS Learning/
β”‚
β”œβ”€β”€ python/                  # Python fundamentals
β”‚   β”œβ”€β”€ python 101.ipynb
β”‚   β”œβ”€β”€ Python 102.ipynb
β”‚   β”œβ”€β”€ String manipulation.ipynb
β”‚   └── Dictionaries.ipynb
β”‚
β”œβ”€β”€ pandas/                  # Data analysis with Pandas
β”‚   β”œβ”€β”€ Pandas 101.ipynb
β”‚   β”œβ”€β”€ data manipulation.ipynb
β”‚   β”œβ”€β”€ purchases.csv
β”‚   └── purchases 2.csv
β”‚
β”œβ”€β”€ matplotlib/              # Data visualization with Matplotlib
β”‚   └── matplotlib 101.ipynb
β”‚
β”œβ”€β”€ seaborn/                 # Visualization with Seaborn
β”‚   └── seaborn 101.ipynb
β”‚
β”œβ”€β”€ Machine Learning/        # Machine learning notebooks
β”‚   β”œβ”€β”€ ML_Pipeline.ipynb
β”‚   β”œβ”€β”€ Decision Trees.ipynb
β”‚   β”œβ”€β”€ Ensemble_learning.ipynb
β”‚   β”œβ”€β”€ Intro_to_Neural_networks.ipynb
β”‚   β”œβ”€β”€ intro_to_CNNs.ipynb
β”‚   β”œβ”€β”€ Intro_to_RNNs.ipynb
β”‚   └── MNIST project.ipynb
β”‚
β”œβ”€β”€ requirements.txt
└── README.md

🧠 How to Learn with This Repo

πŸ‘¨β€πŸ’» Self-Learners

  1. Start from the Python folder
  2. Progress through Pandas β†’ Visualization β†’ Machine Learning
  3. Run each cell, read the comments, and experiment with your own data

πŸ§‘β€πŸ« Educators

  • Use these notebooks as classroom materials or lab guides
  • Assign exercises or project sections for students
  • Integrate into workshops or bootcamps

🀝 Study Groups

  • Learn collaboratively through discussions
  • Recreate visualizations or models together
  • Share insights and practical projects

🀝 Contributing

Contributions are welcome!
You can:

  • Add new tutorials or examples
  • Improve explanations or comments
  • Suggest new datasets or topics
  • Fix typos and enhance documentation

How to Contribute

  1. Fork this repository
  2. Create a branch (git checkout -b feature/add-topic)
  3. Commit changes (git commit -m "Added linear regression notebook")
  4. Push and open a Pull Request

🧾 License

Licensed under the MIT License β€” free to use, modify, and share.


πŸ’¬ Feedback & Contact

Have ideas or suggestions? Reach out!

πŸ“§ Email: asbelkibetrotich@gmail.com
🌍 Connect on LinkedIn


✨ Happy Learning, One Notebook at a Time! ✨

If you found this repository helpful, don't forget to ⭐ star it!

About

πŸ“š Beginner-friendly Python and Pandas tutorials with interactive Jupyter notebooks and sample datasets. Perfect for aspiring data scientists and analysts!

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published