NumPy: From Basics to Advanced
--------------------------------------
PART I: Introduction to NumPy
--------------------------------------
Chapter 1: Getting Started with NumPy
- What is NumPy?
- Why use NumPy over Python lists?
- Installing NumPy
- Importing NumPy
- NumPy workflow in Data Science
Example: Comparing List vs. NumPy Speed
>>> import numpy as np
>>> import time
>>> arr = np.arange(1_000_000)
>>> start = time.time(); arr*2; print(time.time()-start)
Exercises:
1. Install NumPy and print version.
2. Compare execution time of list vs array multiplication.
Chapter 2: NumPy Arrays Basics
- Creating 1D, 2D, 3D arrays
- Array attributes (.ndim, .shape, .size, .dtype)
- Indexing & slicing
- Copy vs View
--------------------------------------
PART II: Array Creation & Manipulation
--------------------------------------
Chapter 3: Creating Arrays
- From lists, tuples
- Zeros, ones, full, eye, identity
- arange, linspace, logspace
- Random arrays
Chapter 4: Array Operations
- Element-wise & scalar operations
- Broadcasting rules
- Universal functions (ufuncs)
- Comparisons & where()
Chapter 5: Reshaping & Combining
- Reshape, flatten, ravel
- Transpose & swapaxes
- Stacking & splitting
--------------------------------------
PART III: Math & Statistics
--------------------------------------
Chapter 6: Mathematical Functions
- Trigonometry (sin, cos, tan)
- Exponential, logarithm
- Rounding (round, floor, ceil)
Chapter 7: Statistics with NumPy
- Mean, median, mode
- Variance & std deviation
- Percentiles & quantiles
- Correlation & covariance
--------------------------------------
PART IV: Advanced Features
--------------------------------------
Chapter 8: Boolean & Fancy Indexing
- Boolean masks
- Fancy indexing
- where(), any(), all()
Chapter 9: Linear Algebra
- Dot product, matrix multiplication
- Determinant, inverse
- Eigenvalues & vectors
- Norms
Chapter 10: Random & Simulations
- rand, randn, randint, choice
- Shuffling
- Monte Carlo simulation (π estimation)
Chapter 11: Advanced Operations
- Vectorization
- Tiling & repeating
- Memory layout: C vs Fortran
- Stride tricks
--------------------------------------
PART V: NumPy in Data Science & ML
--------------------------------------
Chapter 12: NumPy with Pandas & Matplotlib
- NumPy <-> Pandas conversion
- Plotting with Matplotlib
Chapter 13: Real World Applications
- Image processing (grayscale)
- Time-series data (returns)
- Numerical approximations (integration)
--------------------------------------
PART VI: Practice & Interview Prep
--------------------------------------
Chapter 14: Exercises & Case Studies
- 50+ problems from basic to advanced
- Case studies: Weather, Finance, Images
Chapter 15: Interview Questions
- Conceptual Q&A;
- Coding Challenges
--------------------------------------
End of Book
--------------------------------------