Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
83 changes: 83 additions & 0 deletions 0.Introduction/1.Introduction.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# Python for Data Analytics and Visualization - Course Introduction

## Welcome & Instructor Introduction

- **Instructor:** Zain from Job Ready Programmer
- **Experience:** Data consultant with 13+ years of Python experience
- **LinkedIn:** [linkedin.com/in/zain-ashfaq/](https://www.linkedin.com/in/zain-ashfaq/)

## Why Data Science?

- **Top Career Choice:** Data scientist has been the #1 job for years consecutively
- **Growing Field:** Continuously expanding as more data becomes available
- **High Compensation:** Companies like Apple, Amazon, and Facebook pay top dollar
- **Benefits:**
- Higher salaries
- Exposure to cutting-edge problems
- Opportunity to solve real-world challenges

## Course Overview

This course covers Python libraries divided into two main categories:

### 1. Data Analytics Libraries

- **NumPy** - Array creation, operations, and I/O
- **SciPy** - Scientific computing
- **Pandas** - Data manipulation and analysis

### 2. Visualization Libraries

- **Matplotlib** - Basic and detailed plotting
- **Seaborn** - Statistical plotting
- **Plotly** - Interactive visualizations

## Course Content Structure

### Part 1: Working with Data

#### NumPy

- Creating arrays
- Array operations
- Reading and writing array data
- Dedicated package for numerical arrays

#### Pandas

- Creating and operating on DataFrames
- Using location indices to find data
- Data cleaning and issue resolution

### Part 2: Data Visualization

#### Matplotlib

- Quick data plotting
- Detailed plotting capabilities
- Creating subplots
- Advanced plotting features

#### Seaborn (Statistical Plotting Library)

- Distribution plots
- Categorical plots
- Matrix plots
- Better understanding of data patterns

#### Plotly (Interactive Visualization)

- Interactive plots
- Interactive statistical visualizations
- Enhanced user engagement with data

## Course Benefits

- **Foundation Building:** Sets up learners for advanced topics like machine learning
- **Career Preparation:** Equips students for the data-intensive world
- **Skill Development:** Builds comprehensive data analytics toolkit
- **Continued Learning:** Gateway to follow-on data courses at Job Ready Programmer

## Next Steps

This course is designed to prepare you for the data-driven future and provide a solid foundation for advanced data science topics.
119 changes: 119 additions & 0 deletions 0.Introduction/2.Data_and_information.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
# Data and Information - Fundamentals of Data Analytics

## Welcome & Instructor Introduction

**Instructor:** Zane - Data Consultant
**Purpose:** Understanding basic concepts before diving into technical aspects

## What is Data?

### Definition

- **Data:** Small, isolated piece of fact that doesn't make sense on its own
- **Example:** Age information without knowing who it belongs to
- **Characteristics:**
- Isolated pieces of information
- Not very useful in isolation
- Abundant in our surroundings
- Requires synthesis to become useful

### The Power of Connection

Data becomes more meaningful when connected together:

#### Car Information Example

- **Speed alone:** Limited usefulness
- **Speed + Direction:** Better understanding
- **Speed + Direction + Location:** Complete picture

## Data Structures

### Vectors

**Definition:** Multiple data items combined together

#### Example: Car A traveling information

- Speed: 25 km/hour
- Direction: West
- Location: Main Street

**Key Concepts:**

- **Vector:** Collection of related data points
- **Dimensions:** Each type of data (speed, direction, location)
- Provides comprehensive information about a single entity

### Matrices

**Definition:** Multiple vectors combined together

#### Example: Information about multiple cars

- Car A: Speed, Direction, Location
- Car B: Speed, Direction, Location
- Car C: Speed, Direction, Location

**Benefits:**

- Bigger picture understanding
- Complete map of multiple entities
- Comprehensive data overview

### Table Representation

**Structure:**

- **Rows:** Individual entities (Car A, Car B, Car C)
- **Columns:** Dimensions (Speed, Direction, Location)
- **Format:** Traditional table layout

## Important Terminology

### Interchangeable Terms

| Term 1 | Term 2 | Definition |
|--------|--------|------------|
| **Vector** | **Series** | Set of data items for one entity |
| **Matrix** | **Data Frame** | Collection of vectors/series |

**Key Understanding:**

- Vector = Series (both represent data sets)
- Matrix = Data Frame (both represent collections of data sets)
- These terms will be used interchangeably in data analytics discussions

## From Data to Information

### The Progression

1. **Data:** Isolated facts
2. **Information:** Connected data that provides meaning
3. **Insights:** Connected information revealing trends
4. **Predictions:** Using insights to forecast future outcomes

### The Value Chain

```text
Data → Information → Insights → Predictions
```

**Benefits of Connection:**

- Isolated values have limited use
- Connected data provides context
- Information reveals patterns
- Insights enable decision-making
- Predictions guide future actions

## Key Takeaways

- **Data Structure Hierarchy:** Data → Vectors → Matrices
- **Terminology:** Understand interchangeable terms for better comprehension
- **Value Creation:** Connection transforms data into actionable information
- **Foundation:** These concepts are essential for data analytics understanding

## Next Steps

These fundamental concepts will be referenced throughout the course to help make data analytics discussions more meaningful and accessible.
161 changes: 161 additions & 0 deletions 0.Introduction/3.Environment_setup.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,161 @@
# Environment Setup - Python Data Analytics Development

## Overview & Course Goals

**Instructor:** Zain
**Programming Language:** Python
**Course Objectives:**

- Learn data analytics and machine learning techniques
- Understand the underlying concepts and processes
- Work with visual plots and interactive notebooks

## Why Anaconda?

### Key Benefits

- **Graphical User Interface:** Visual interface for better learning experience
- **Jupyter Notebook Integration:** Interactive development environment
- **Pre-installed Python:** No separate Python installation required
- **Built-in Data Analytics Packages:** Includes essential libraries out-of-the-box

### Pre-installed Packages

- **NumPy** - Numerical computing
- **Pandas** - Data manipulation and analysis
- **Matplotlib** - Data visualization
- **Scikit-learn** - Machine learning library

## Installation Guide

### Step 1: Download Anaconda

1. **Search:** Go to Google and search for "Anaconda"
2. **Official Website:** Click on [Anaconda.com](https://www.anaconda.com/) - "The world's most popular data science platform"
3. **Navigation:** Go to "Get Started" → "See all Anaconda products"
4. **Choose Edition:** Select the **Free Individual Edition**
5. **Download Page:** Click "Learn More" to access the download page

### Step 2: Select Your Installer

**Important:** Choose the installer that matches your operating system:

- **Windows:** Download the graphical installer
- **macOS:** Download the macOS installer
- **Linux:** Download the Linux installer

**Python Version:** Download the latest Python version available (3.7+ recommended)

### Step 3: Installation Process

#### Windows Installation Steps

1. **Run Installer:** Click on the downloaded file
2. **Welcome Screen:** Click "Next" to continue
3. **License Agreement:** Click "I Agree" to continue
4. **Installation Type:**
- **Recommended:** "Just Me" (easier, no admin password required)
- **Alternative:** "All Users" (requires administrator password)
5. **Installation Location:** Leave default path as is
6. **Advanced Options:**
- ✅ **Check "Add Anaconda to PATH"** (despite "not recommended" warning)
- This makes it easier for system to find the installation
7. **Install:** Click "Install" and wait for completion
8. **Completion:**
- Click "Next" → "Next"
- Optionally uncheck "Learn more about Anaconda" and tutorial
- Click "Finish"

## Getting Started with Anaconda

### Launching Anaconda Navigator

1. **Access:** Go to Start Menu → Type "Anaconda" → Open "Anaconda Navigator"
2. **Interface:** The Navigator provides access to various tools:
- **Jupyter Notebook** - Interactive coding environment
- **Jupyter Lab** - Advanced notebook interface
- **Spyder** - IDE for Python development
- **Other tools** - Additional development applications

### Using Jupyter Notebook

#### Launching Jupyter

1. **From Navigator:** Click "Launch" under Jupyter Notebook
2. **Browser Interface:** Opens in your default web browser
3. **File System:** Shows your computer's directory structure (Desktop, Downloads, Documents)

#### Creating Your First Notebook

1. **Navigation:** Browse to your desired folder (e.g., Downloads)
2. **New Notebook:** Click "New" → "Python 3" notebook
3. **Interface:** Opens a new tab with an interactive Python notebook

#### Basic Jupyter Operations

**Running Code:**

- Type Python code in cells
- **Method 1:** Click "Run" button
- **Method 2:** Press `Shift + Enter` (recommended shortcut)

**Example Code to Test:**

```python
# Basic output
print("Hello World")

# Variable assignment and display
print("My name is Zain")

# Mathematical operations
a = 1 + 3
print(a) # Shows output: 4

# Direct value display (without print)
a # Shows: 4
```

## Essential Tools & Resources

### Official Links

- **[Anaconda Distribution](https://www.anaconda.com/products/distribution)** - Main download page
- **[Jupyter Notebook](https://jupyter.org/)** - Official Jupyter project
- **[Python](https://www.python.org/)** - Official Python website
- **[NumPy](https://numpy.org/)** - Numerical computing library
- **[Pandas](https://pandas.pydata.org/)** - Data analysis library
- **[Matplotlib](https://matplotlib.org/)** - Plotting library
- **[Scikit-learn](https://scikit-learn.org/)** - Machine learning library

### Documentation Resources

- **[Anaconda Documentation](https://docs.anaconda.com/)** - Complete Anaconda guide
- **[Jupyter Notebook Documentation](https://jupyter-notebook.readthedocs.io/)** - Notebook user guide
- **[Python Documentation](https://docs.python.org/)** - Official Python docs

## Verification & Next Steps

### Testing Your Setup

1. **Launch Jupyter Notebook** successfully
2. **Create a new notebook**
3. **Run basic Python commands** (print statements, variables)
4. **Verify output display** in the notebook interface

### What's Next

- **Course Progression:** Ready for data analytics and machine learning development
- **Learning Path:** Will explore Python commands and data science packages
- **Practical Application:** Use different packages for various analytical tasks

## Troubleshooting Tips

- **Path Issues:** If Anaconda commands aren't recognized, ensure PATH was added during installation
- **Browser Problems:** Jupyter opens in your default browser; try a different browser if issues occur
- **Performance:** Close unnecessary applications if Anaconda runs slowly
- **Updates:** Keep Anaconda updated for the latest features and security patches

## Conclusion

Your development environment is now ready for comprehensive data analytics and machine learning work with Python, Jupyter notebooks, and all essential data science libraries pre-installed.
Loading