This book introduces students with little or no prior programming experience to the art of computational problem solving using Python and various Python libraries, including numpy, matplotlib, random, pandas, and sklearn. It provides students with skills that will enable them to make productive use of computational techniques, including some of the tools and techniques of data science for using computation to model and interpret data as well as substantial material on machine learning.
Author(s): John V. Guttag
Edition: 3
Publisher: The MIT Press
Year: 2021
Language: English
Pages: 496
City: Cambridge, Massachusetts
PREFACE
ACKNOWLEDGMENTS
1: GETTING STARTED
2: INTRODUCTION TO PYTHON
3: SOME SIMPLE NUMERICAL PROGRAMS
4: FUNCTIONS, SCOPING, AND ABSTRACTION
5: STRUCTURED TYPES AND MUTABILITY
6: RECURSION AND GLOBAL VARIABLES
7: MODULES AND FILES
8: TESTING AND DEBUGGING
9: EXCEPTIONS AND ASSERTIONS
10: CLASSES AND OBJECT-ORIENTED PROGRAMMING
11: A SIMPLISTIC INTRODUCTION TO ALGORITHMIC COMPLEXITY
12: SOME SIMPLE ALGORITHMS AND DATA STRUCTURES
13: PLOTTING AND MORE ABOUT CLASSES
14: KNAPSACK AND GRAPH OPTIMIZATION PROBLEMS
15: DYNAMIC PROGRAMMING
16: RANDOM WALKS AND MORE ABOUT DATA VISUALIZATION
17: STOCHASTIC PROGRAMS, PROBABILITY, AND DISTRIBUTIONS
18: MONTE CARLO SIMULATION
19: SAMPLING AND CONFIDENCE
20: UNDERSTANDING EXPERIMENTAL DATA
21: RANDOMIZED TRIALS AND HYPOTHESIS CHECKING
22: LIES, DAMNED LIES, AND STATISTICS
23: EXPLORING DATA WITH PANDAS
24: A QUICK LOOK AT MACHINE LEARNING
25: CLUSTERING
26: CLASSIFICATION METHODS
PYTHON 3.8 QUICK REFERENCE
INDEX