Cover
Title Page
Copyright Page
Dedication
Contents
Preface
Chapter 1: Introduction to Python 3
Some Standard Modules in Python
Simple Data Types in Python
Working With Numbers
Working With Other Bases
The chr() Function
The round() Function in Python
Unicode and UTF-8
Working With Unicode
Working With Strings
Comparing Strings
Uninitialized Variables and the Value None in Python
Slicing and Splicing Strings
Testing for Digits and Alphabetic Characters
Search and Replace a String in Other Strings
Precedence of Operators in Python
Python Reserved Words
Working With Loops in Python
Python for Loops
Numeric Exponents in Python
Nested Loops
The split() Function With for Loops
Using the split() Function to Compare Words
Python while Loops
Conditional Logic in Python
The break/continue/pass Statements
Comparison and Boolean Operators
The in/not in/is/is not Comparison Operators
The and, or, and not Boolean Operators
Local and Global Variables
Scope of Variables
Pass by Reference versus Value
Arguments and Parameters
User-Defined Functions in Python
Specifying Default Values in a Function
Returning Multiple Values From a Function
Lambda Expressions
Working With Lists
Lists and Basic Operations
Lists and Arithmetic Operations
Lists and Filter-Related Operations
The join(), range(), and split() Functions
Arrays and the append() Function
Other List-Related Functions
Working With List Comprehensions
Working With Vectors
Working With Matrices
Queues
Tuples (Immutable Lists)
Sets
Dictionaries
Creating a Dictionary
Displaying the Contents of a Dictionary
Checking for Keys in a Dictionary
Deleting Keys From a Dictionary
Iterating Through a Dictionary
Interpolating Data From a Dictionary
Dictionary Functions and Methods
Other Sequence Types in Python
Mutable and Immutable Types in Python
Summary
Chapter 2: NumPy and Data Visualization
What Is NumPy?
Useful NumPy Features
What Are NumPy Arrays?
Working With Loops
Appending Elements to Arrays (1)
Appending Elements to Arrays (2)
Multiplying Lists and Arrays
Doubling the Elements in a List
Lists and Exponents
Arrays and Exponents
Math Operations and Arrays
Working With “–1” Subranges With Vectors
Working With “–1” Subranges With Arrays
Other Useful NumPy Methods
Arrays and Vector Operations
NumPy and Dot Products (1)
NumPy and Dot Products (2)
NumPy and the Length of Vectors
NumPy and Other Operations
NumPy and the reshape() Method
Calculating the Mean and Standard Deviation
Code Sample With Mean and Standard Deviation
Trimmed Mean and Weighted Mean
Working With Lines in the Plane (Optional)
Plotting Randomized Points With NumPy and Matplotlib
Plotting a Quadratic With NumPy and Matplotlib
What Is Linear Regression?
What Is Multivariate Analysis?
What About Nonlinear Datasets?
The MSE (Mean Squared Error) Formula
Other Error Types
Nonlinear Least Squares
Calculating the MSE Manually
Find the Best-Fitting Line in NumPy
Calculating MSE by Successive Approximation (1)
Calculating MSE by Successive Approximation (2)
Google Colaboratory
Uploading CSV Files in Google Colaboratory
Summary
Chapter 3: Pandas and Data Visualization
What Is Pandas?
Pandas DataFrames
Dataframes and Data Cleaning Tasks
A Pandas DataFrame Example
Describing a Pandas DataFrame
Pandas Boolean DataFrames
Transposing a Pandas DataFrame
Pandas DataFrames and Random Numbers
Converting Categorical Data to Numeric Data
Matching and Splitting Strings in Pandas
Merging and Splitting Columns in Pandas
Combining Pandas DataFrames
Data Manipulation With Pandas DataFrames
Data Manipulation With Pandas DataFrames (2)
Data Manipulation With Pandas DataFrames (3)
Pandas DataFrames and CSV Files
Pandas DataFrames and Excel Spreadsheets
Select, Add, and Delete Columns in DataFrames
Handling Outliers in Pandas
Pandas DataFrames and Scatterplots
Pandas DataFrames and Simple Statistics
Finding Duplicate Rows in Pandas
Finding Missing Values in Pandas
Sorting DataFrames in Pandas
Working With groupby() in Pandas
Aggregate Operations With the titanic.csv Dataset
Working with apply() and applymap() in Pandas
Useful One-Line Commands in Pandas
What is Texthero?
Data Visualization in Pandas
Summary
Chapter 4: Pandas and SQL
Pandas and Data Visualization
Pandas and Bar Charts
Pandas and Horizontally Stacked Bar Charts
Pandas and Vertically Stacked Bar Charts
Pandas and Nonstacked Area Charts
Pandas and Stacked Area Charts
What Is Fugue?
MySQL, SQLAlchemy, and Pandas
What Is SQLAlchemy?
Read MySQL Data via SQLAlchemy
Export SQL Data From Pandas to Excel
MySQL and Connector/Python
Establishing a Database Connection
Reading Data From a Database Table
Creating a Database Table
Writing Pandas Data to a MySQL Table
Read XML Data in Pandas
Read JSON Data in Pandas
Working With JSON-Based Data
Python Dictionary and JSON
Python, Pandas, and JSON
Pandas and Regular Expressions (Optional)
What Is SQLite?
SQLite Features
SQLite Installation
Create a Database and a Table
Insert, Select, and Delete Table Data
Launch SQL Files
Drop Tables and Databases
Load CSV Data Into a sqlite Table
Python and SQLite
Connect to a sqlite3 Database
Create a Table in a sqlite3 Database
Insert Data in a sqlite3 Table
Select Data From a sqlite3 Table
Populate a Pandas Dataframe From a sqlite3 Table
Histogram With Data From a sqlite3 Table (1)
Histogram With Data From a sqlite3 Table (2)
Working With sqlite3 Tools
SQLiteStudio Installation
DB Browser for SQLite Installation
SQLiteDict (Optional)
Working With BeautifulSoup
Parsing an HTML Web Page
BeautifulSoup and Pandas
BeautifulSoup and Live HTML Web Pages
Summary
Chapter 5: Matplotlib for Data Visualization
What Is Data Visualization?
Types of Data Visualization
What Is Matplotlib?
Matplotlib Styles
Display Attribute Values
Color Values in Matplotlib
Cubed Numbers in Matplotlib
Horizontal Lines in Matplotlib
Slanted Lines in Matplotlib
Parallel Slanted Lines in Matplotlib
A Grid of Points in Matplotlib
A Dotted Grid in Matplotlib
Two Lines and a Legend in Matplotlib
Loading Images in Matplotlib
A Checkerboard in Matplotlib
Randomized Data Points in Matplotlib
A Set of Line Segments in Matplotlib
Plotting Multiple Lines in Matplotlib
Trigonometric Functions in Matplotlib
A Histogram in Matplotlib
Histogram With Data From a sqlite3 Table
Plot Bar Charts Matplotlib
Plot a Pie Chart Matplotlib
Heat Maps in Matplotlib
Save Plot as a PNG File
Working With SweetViz
Working With Skimpy
3D Charts in Matplotlib
Plotting Financial Data With mplfinance
Charts and Graphs With Data From Sqlite3
Summary
Chapter 6: Seaborn for Data Visualization
Working With Seaborn
Features of Seaborn
Seaborn Dataset Names
Seaborn Built-In Datasets
The Iris Dataset in Seaborn
The Titanic Dataset in Seaborn
Extracting Data From Titanic Dataset in Seaborn (1)
Extracting Data From Titanic Dataset in Seaborn (2)
Visualizing a Pandas Dataset in Seaborn
Seaborn Heat Maps
Seaborn Pair Plots
What Is Bokeh?
Introduction to Scikit-Learn
The Digits Dataset in Scikit-learn
The Iris Dataset in Scikit-Learn
Scikit-Learn, Pandas, and the Iris Dataset
Advanced Topics in Seaborn
Summary
Appendix: SVG and D3
Basic Two-Dimensional Shapes in SVG
SVG Gradients and the
Element
SVG Element
Bézier Curves and Transforms
SVG Filters and Shadow Effects
Rendering Text Along an SVG Element
SVG Transforms
SVG and HTML
CSS3 and SVG
Similarities and Differences Between SVG and CSS3
Introduction to D3
What Is D3?
D3 Boilerplate
Method Chaining in D3
The D3 Methods select() and selectAll()
Specifying UTF-8 in HTML5 Web Pages With D3
Creating New HTML Elements
The Most Common Idiom in D3
Binding Data to Document-Object-Model Elements
Generating Text Strings
Creating Simple Two-Dimensional Shapes
Bézier Curves and Text
A Digression: Scaling Arrays of Numbers to Different Ranges
Tweening in D3
Formatting Numbers
Working With Gradients
Linear Gradients
Radial Gradients
Adding HTML Elements With Gradient Effects
Other D3 Graphics Samples
D3 Application Programming Interface Reference
Other Features of D3
Summary
Index