
About the course and the author.
Invite early student feedback in journals and request ratings to improve the course, asking students to inform before submitting a five-star or one-star score.
Set up a working environment for practical data analysis in Python by installing conda (anaconda or miniconda), Python 3.6, and Jupyter, and installing pandas, scikit-learn, matplotlib, and seaborn.
Introduction to NumPy Section
Learn to create arrays and matrices in Python using NumPy, from 1d arrays to 4x8 matrices, inspect shapes, build ranges, and reshape data for analysis.
Explore arithmetic operations on NumPy matrices using normally distributed random numbers, including reshaping, rounding, and updating matrices, plus min, max, mean, standard deviation, and transpose.
Learn slicing and filtering matrices in python, including retrieving rows and columns, using exclusive ranges, creating views versus copies, and applying boolean criteria like values over 11.
Master practical data analysis with python by creating matrices, determining shapes, generating normally distributed numbers, ranges, reshaping, and transposing. Learn arithmetic operations, slicing, and applying filters, with question-and-answer recap.
Explore the series structure, including index and data, and learn to create a single index series, perform arithmetic operations, and slice and filter series.
Create and update pandas series from lists, tuples, and dictionaries, assign or stack index labels such as world war casualties by country, and manage updates and deletions.
Learn to slice and filter a multi-index series with quarterly sales data for 2017 and 2016, retrieve year/quarter values, compare sums across years, and identify max and min results.
Learn arithmetic operations on series with 2016 and 2017 monthly data, computing max, min, average, total trade volume, and percent changes while handling missing values and duplicates.
Explore reference modules in data analysis and visualization with Python, learn what they are, how to create and update them, how to query data frames, and anticipate charting package integration.
Explore dataframes in pandas, learn to create and update them from dictionaries or lists, and inspect with head and tail while handling columns, index, and historical data.
Explore how to slice and filter data frames with pandas, using iloc and loc for index- and label-based selection, and apply conditional filtering to a chopstick efficiency dataset.
Learn how to update and merge dataframes by renaming columns in place, adding new columns, appending rows, and using concat to merge frames, then drop, sort, and manage indices.
Show how to use apply and map functions in Python to convert a binary premium column to yes/no, create new columns, and compare apply versus map results using a dictionary.
Learn to read a public Google spreadsheet into a pandas data frame and prepare it for analysis of poll results, including url tweaks, indexing, and date parsing.
Explore practical data visualization by creating line, bar, and pie charts, multiple plots, and grid and scatter layouts with Matplotlib in Python.
Learn to create line charts with matplotlib, plotting baby weight against age, customizing axes, legends, grids, and annotations, and compare boys and girls across single or side-by-side charts.
Explore how scatterplots reveal relationships between unemployment and interest rates, using pandas, matplotlib, and seaborn to plot Europe and United States data and overlay a linear regression line.
Create pie and donut charts in Python using a religions followers dataset, importing packages, reading data, customizing labels, adding percentages, exploding a slice, and adjusting visuals.
Learn practical data analysis and visualization by creating and annotating bar charts in python, including simple, grouped, horizontal, and stacked charts with axis labeling and value annotations.
Learn to create histograms and kernel density estimates in Python using Matplotlib, explore price distributions, set bin sizes, and interpret probability densities.
Create multiple plots using subplot2grid on a 6x3 grid, allocating space for nine charts including line, histogram, pie, scatter, bar, horizontal bar, and donut charts; then apply formatting and titles.
Analyze bank statement data with Python to visualize income and expense trends through time-series, monthly totals, and category-based charts for spending insights.
Analyze customer satisfaction using the net promoter score, classifying promoters and distractors, and explore age and gender effects on average ratings with scatter and bar plots.
Preprocess data for machine learning by handling missing values to avoid garbage in garbage out, encoding categorical features with dummy variables, and scaling for comparable ranges.
Split data into training and testing sets to evaluate model accuracy. Use sklearn's train_test_split with test_size 0.15 to allocate 85% training data and 15% testing data, separating X and y (price).
Understand the logic of linear regression, ensure a linear relationship between independent and dependent variables, check for outliers and normalize when needed, and confirm predictor independence before predicting house prices.
Learn to build a linear regression model to predict Boston house prices, including data preprocessing, outlier handling, and evaluating with R-squared and residual analysis.
Exclude outliers from house price data and retrain a linear regression model, then compare mean squared residuals and residual plots to demonstrate improved accuracy.
Learn logistic regression as a linear, classification method that estimates the probability of a binary outcome and master data preparation, including scaling, outlier handling, and multicollinearity management.
Build and compare two logistic regression models to predict gender from hand and foot length, using correlation analysis and a heat map, with accuracy and confusion matrix evaluation.
Improve logistic regression accuracy by applying l1 and l2 regularisation, scaling features, and using train/test splits with feature selection to boost accuracy from 6–7% to 88%, evaluated with confusion matrices.
Explore multiclass classification with logistic regression using one-vs-rest and multinomial approaches. Build and evaluate models on the iris dataset, comparing L1 and L2 penalties, and interpret accuracy and confusion matrices.
Explore multi-class classification with k-nearest neighbor and radius neighbors, comparing uniform versus distance weighting, and validate models on the multiclass iris dataset.
Explore support vector machines for classification, maximizing margin with hyperplanes, using kernel tricks for nonlinear data, and tuning with C and gamma on the Iris dataset.
Learn to build a Naive Bayes classifier from prior data, compute feature-based probabilities with long or short hair and female or male labels, and predict a new instance.
Explore how decision trees work and how random forest uses multiple trees with random feature selection and majority voting, demonstrated with a Python scikit-learn example and training/test split.
Classify handwritten digits using logistic regression, a support vector classifier, k-nearest neighbors, and random forest on the digits dataset, and compare results with a confusion matrix.
Learn how to perform Credit Card Fraud Detection with Scikit-learn
The main objective of this course is to make you feel comfortable analyzing, visualizing data and building machine learning models in python to solve various problems.
This course does not require you to know math or statistics in anyway, as you will learn the logic behind every single model on an intuition level. Yawning students is not even in the list of last objectives.
Throughout the course you will gain all the necessary tools and knowledge to build proper forecast models. And proper models can be accomplished only if you normalize data. In view of that, there is a dedicated class that will guide you on how to avoid Garbage-In, Garbage-Out and feed the right data, which most courses skip for some reason.
Sample Datasets Used in This Course
Required Python Packages for This Course