Preface What this book covers What you need for this book Who this book is for Conventions Reader feedback Customer support Downloading the example code Errata Piracy Questions Jupyter and Data Science Jupyter concepts A first look at the Jupyter user interface Detailing the Jupyter tabs What actions can I perform with Jupyter? What objects can Jupyter manipulate? Viewing the Jupyter project display File menu Edit menu View menu Insert menu Cell menu Kernel menu Help menu Icon toolbar How does it look when we execute scripts? Industry data science usage Real life examples Finance, Python - European call option valuation Finance, Python - Monte Carlo pricing Gambling, R - betting analysis Insurance, R - non-life insurance pricing Consumer products, R - marketing effectiveness Using Docker with Jupyter Using a public Docker service Installing Docker on your machine How to share notebooks with others Can you email a notebook? Sharing a notebook on Google Drive Sharing on GitHub Store as HTML on a web server Install Jupyter on a web server How can you secure a notebook? Access control Malicious content Summary Working with Analytical Data on Jupyter Data scraping with a Python notebook Using heavy-duty data processing functions in Jupyter Using NumPy functions in Jupyter Using pandas in Jupyter Use pandas to read text files in Jupyter Use pandas to read Excel files in Jupyter Using pandas to work with data frames Using the groupby function in a data frame Manipulating columns in a data frame Calculating outliers in a data frame Using SciPy in Jupyter Using SciPy integration in Jupyter Using SciPy optimization in Jupyter Using SciPy interpolation in Jupyter Using SciPy Fourier Transforms in Jupyter Using SciPy linear algebra in Jupyter Expanding on panda data frames in Jupyter Sorting and filtering data frames in Jupyter/IPython Filtering a data frame Sorting a data frame Summary Data Visualization and Prediction Make a prediction using scikit-learn Make a prediction using R Interactive visualization Plotting using Plotly Creating a human density map Draw a histogram of social data Plotting 3D data Summary Data Mining and SQL Queries Special note for Windows installation Using Spark to analyze data Another MapReduce example Using SparkSession and SQL Combining datasets Loading JSON into Spark Using Spark pivot Summary R with Jupyter How to set up R for Jupyter R data analysis of the 2016 US election demographics Analyzing 2016 voter registration and voting Analyzing changes in college admissions Predicting airplane arrival time Summary Data Wrangling Reading a CSV file Reading another CSV file Manipulating data with dplyr Converting a data frame to a dplyr table Getting a quick overview of the data value ranges Sampling a dataset Filtering rows in a data frame Adding a column to a data frame Obtaining a summary on a calculated field Piping data between functions Obtaining the 99% quantile Obtaining a summary on grouped data Tidying up data with tidyr Summary Jupyter Dashboards Visualizing glyph ready data Publishing a notebook Font markdown List markdown Heading markdown Table markdown Code markdown More markdown Creating a Shiny dashboard R application coding Publishing your dashboard Building standalone dashboards Summary Statistical Modeling Converting JSON to CSV Evaluating Yelp reviews Summary data Review spread Finding the top rated firms Finding the most rated firms Finding all ratings for a top rated firm Determining the correlation between ratings and number of reviews Building a model of reviews Using Python to compare ratings Visualizing average ratings by cuisine Arbitrary search of ratings Determining relationships between number of ratings and ratings Summary Machine Learning Using Jupyter Naive Bayes Naive Bayes using R Naive Bayes using Python Nearest neighbor estimator Nearest neighbor using R Nearest neighbor using Python Decision trees Decision trees in R Decision trees in Python Neural networks Neural networks in R Random forests Random forests in R Summary Optimizing Jupyter Notebooks Deploying notebooks Deploying to JupyterHub Installing JupyterHub Accessing a JupyterHub Installation Jupyter hosting Optimizing your script Optimizing your Python scripts Determining how long a script takes Using Python regular expressions Using Python string handling Minimizing loop operations Profiling your script Optimizing your R scripts Using microbenchmark to profile R script Modifying provided functionality Optimizing name lookup Optimizing data frame value extraction Changing R Implementation Changing algorithms Monitoring Jupyter Caching your notebook Securing a notebook Managing notebook authorization Securing notebook content Scaling Jupyter Notebooks Sharing Jupyter Notebooks Sharing Jupyter Notebook on a notebook server Sharing encrypted Jupyter Notebook on a notebook server Sharing notebook on a web server Sharing notebook on Docker Converting a notebook Versioning a notebook Summary