
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.
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.
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.
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.
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.
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.
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.
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.
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