Python With Data Science

Python With Data Science

Python is a universally useful programming dialect that is ending up increasingly well known for doing information science. Organizations worldwide are utilizing Python to gather experiences from their information and get an aggressive edge. Dissimilar to some other Python instructional exercise, this course centers around Python particularly for information science.

Module 1: Introduction to Python, its Sequences and File Operations

Goal:Give brief idea of what Python is and touch on the basics.Learn different types of sequence

structures, related operations and their usage. Also learn diverse ways of opening, reading, and

writing to files.

 

Objectives:

At the end of this Module, you should be able to:

 Define Python·

 Understand why Python is Popular·

 Setup Python Environment·

 Understand Operands and Expressions·

 Write your First Python Program·

 Understand Command Line Parameters and Flow Control·

 Take Input from the User and Perform Operations on it·

 Explain Numbers·

 Explain Strings, Tuples, Lists, Dictionaries, and Sets·

 

Topics:

 Overview of Python·

 The Companies using Python·

 DifferentApplications where Python is Used·

 Discuss Python Scripts on UNIX/Windows·

 Values, Types, Variables·

 Operands and Expressions·

 Conditional Statements·

 Loops·

 Command Line Arguments·

 Writing to the Screen·

 Python Files I/O Functions·

 Numbers·

 

 Strings and Related Operations·

 Tuples and Related Operations·

 Lists and Related Operations·

 Dictionaries and Related Operations·

 Sets and Related Operations·

 

Hands On/Demo:

 Creating “Hello World” code·

 Variables·

 Demonstrating Conditional Statements·

 Demonstrating Loops·

 Tuple - Properties, Related Operations, Compared with List·

 List - Properties, Related Operations·

 Dictionary - Properties, Related Operations·

 Set - Properties, Related Operations·

 

Module2: Deep Dive – Functions, OOPs, Modules, Errors and Exceptions

Goal:

In this Module, you will learn how to create generic python scripts, how to address

errors/exceptions in code and finally how to extract/filter content using regex.

 

Objectives:

At the end of this Module, you should be able to:

 Create and Execute Functions·

 Learn Object Oriented Concepts·

 Understand Python Standard Libraries·

 Define Modules·

 Handle the Exceptions·

 

Topics:

 Functions·

 Function Parameters·

 Global Variables·

 Variable Scope and Returning Values·

 Lambda Functions·

 Object Oriented Concepts·

 Standard Libraries·

 Modules Used in Python·

 The Import Statements·

 Module Search Path·

 Package Installation Ways·

 Errors and Exception Handling·

 Handling Multiple Exceptions·

 

Hands On/Demo:

 Functions - Syntax, Arguments, Keyword Arguments, Return Values·

 Lambda - Features, Syntax, Options, Compared with the Functions·

 Sorting - Sequences, Dictionaries, Limitations of Sorting·

 Errors and Exceptions - Types of Issues, Remediation·

 Packages and Module - Modules, Import Options, sys Path·

 

Module3: Data Manipulation using NumPy, Pandas& Matplotlib

Goal:

This Module helps you get familiar with different libraries which include a statistical approach for

manipulating your data using different types of measures, probability distributions and

visualisations.

Objectives:

At the end of this Module, you should be able to:

 Create Arrays using NumPy·

 Perform Various Operations on Arrays and Manipulate them·

 Read· &Write Data from Text/CSV Files into Arrays and vice-versa

 Create Series and DataFrames in Pandas·

 Indexing and Slicing of Data Structures in Pandas·

 Reading and Writing Data from Excel/CSV Formats into Pandas·

 Data Preparation·

 Merging, Concatenation, Combining, Pivoting· &Removal

 Data Transformation - Merging, Joining· & Concatenation

 Create Simple Plots usingMatplotlib·

 Learn Different Plot Formats Available in Matplotlib·

 Choose the Right Plot Format for a Problem at Hand Judiciously·

 Scale and Add Style to your Plots·

Topics:

 NumPy - Arrays·

 Operations on Arrays·

 Indexing,Slicing and Iterating·

 Reading and Writing Arrays on Files·

 Pandas - Data Structures· &Index Operations

 Basic Functionalities of a Data Object·

 Merging of Data Objects·

 Concatenation of Data Objects·

 Types of Joins on Data Objects·

 Exploring a Dataset·

 Analysing a dataset·

 Reading and Writing Data from Excel/CSV Formats with Pandas·

 The Matplotlib Library·

 Grids, Axes, Plots·

 Markers, Colours, Fonts and Styling·

 Types of Plots - Bar Graphs, Pie Charts, Histograms·

 

 Contour Plots·

Hands On/Demo:

 NumPy Library- Installation, Creating NumPy Array, Operations performed on NumPy Array·

 Pandas Library- Installation, Creating Series and Dataframes, Importing and Exporting Data·

 Pandas Function- Ndim(), axes(), values(), head(), tail(), sum(), std(), iteritems(), iterrows(),·

itertuples(), GroupBy operations, Aggregation, Concatenation, Merging and joining

 Matplotlib - Installation, Scatterplot, Histogram, Bar Graph, Pie Chart, Adding Styles·

 

Module 4: Introduction to Machine Learning with Python

Goal:

In this module, you will learn the concept of Machine Learning and its types.

Objective:

At the end of this module, you should be able to:

 Essential Python Revision·

 Necessary Machine Learning Python libraries·

 Define Machine Learning·

 Discuss Machine Learning Use cases·

 List the categories of Machine Learning·

 Illustrate Supervised Learning Algorithms·

 Identify and recognize machine learning algorithms around us·

 Understand the various elements of machine learning algorithm like parameters, hyper·

parameters, loss function and optimization.

 

Topics:

 Python Revision (numpy, Pandas, scikit learn, matplotlib)·

 What is Machine Learning?·

 Machine Learning Use-Cases·

 Machine Learning Process Flow·

 Machine Learning Categories·

 Linear regression·

 Gradient descent·

Skills:

 Machine Learning concepts·

 Machine Learning types·

 Linear Regression Implementation·

 

Hands On:

 Linear Regression – Boston Dataset·

 

Module 5:Supervised Learning - I

Goal:

In this module, you will learn Supervised Learning Techniques and their implementation, for

example, Decision Trees, Random Forest Classifier etc.

Objective:

At the end of this module, you should be able to:

 Understand What is Supervised Learning?·

 Illustrate Logistic Regression·

 Define Classification·

 Explain different Types of Classifiers such as,·

o Decision Tree

o Random Forest

 

Topics:

 What is Classification and its use cases?·

 What is Decision Tree?·

 Algorithm for Decision Tree Induction·

 Creating a Perfect Decision Tree·

 Confusion Matrix·

 What is Random Forest?·

Skills:

 Supervised Learning concepts·

 Implementing different types of Supervised Learning algorithms·

 Evaluating model output·

 

Hands On:

 Implementation of Logistic regression, Decision tree, Random forest·

 

Module 6:Dimensionality Reduction

Goal: In this module you will learn about impact of dimensions within data. You will be taught to

perform factor analysis using PCA and compress dimensions. Also, you will be developing LDA

model.

Objective:

At the end of this module, you should be able to:

 Define the importance of Dimensions·

 

 Explore PCA and its implementation·

 Discuss LDA and its implementation·

Topics:

 Introduction to Dimensionality·

 Why Dimensionality Reduction·

 PCA·

 Factor Analysis·

 Scaling dimensional model·

 LDA·

Skills:

 Implementing Dimensionality Reduction Technique·

Hands On:

 PCA·

 Scaling·

 

Module 7:Supervised Learning - II

Goal:

In this module, you will learn Supervised Learning Techniques and their implementation, for

example, Decision Trees, Random Forest Classifier etc.

Objective:

At the end of this module, you should be able to:

 Understand What is Naïve Bayes Classifier·

 How Naïve Bayes Classifier works?·

 Understand Support Vector Machine·

 Illustrate How Support Vector Machine works?·

 Understand Hyper parameter Optimization·

Topics:

 What is Naïve Bayes?·

 How Naïve Bayes works?·

 Implementing Naïve Bayes Classifier·

 What is Support Vector Machine?·

 Illustrate how Support Vector Machine works?·

 Hyperparameter Optimization·

 Grid Search vs Random Search·

 Implementation of Support Vector Machine for Classification·

Skills:

 Supervised Learning concepts·

 Implementing different types of Supervised Learning algorithms·

 Evaluating model output·

 

Hands On:

 Implementation of Naïve Bayes, SVM·

 

Module 8:Unsupervised Learning

Goal:

In this module, you will learn about Unsupervised Learning and the various types of clustering that

can be used to analyze the data.

Objective:

At the end of this module, you should be able to:

 Define Unsupervised Learning·

 Discuss the following Cluster Analysis·

o K - means Clustering

o C - means Clustering

o Hierarchical Clustering

 

Topics:

 What is Clustering· & its Use Cases?

 What is K-means Clustering?·

 How K-means algorithm works?·

 How to do optimal clustering·

 What is C-means Clustering?·

 What is Hierarchical Clustering?·

 How Hierarchical Clustering works?·

Skills:

 Unsupervised Learning·

 Implementation of Clustering – various types·

Hands On:

 Implementing K-means Clustering·

 Implementing Hierarchical Clustering·

 

Module 9:Association Rules Mining and Recommendation Systems

Goal: In this module, you will learn Association rules and their extension towards recommendation

engines with Apriori algorithm.

Objective:

 

At the end of this module, you should be able to:

 Define Association Rules·

 Learn the backend of recommendation engines and develop your own using python·

Topics:

 What are Association Rules?·

 Association Rule Parameters·

 Calculating Association Rule Parameters·

 Recommendation Engines·

 How Recommendation Engines work?·

 Collaborative Filtering·

 Content Based Filtering·

Skills:

 Data Mining using python·

 Recommender Systems using python·

Hands On:

 Apriori Algorithm·

 Market Basket Analysis·

 

Module 10:Reinforcement Learning

Goal:

In this module, you will learn about developing a smart learning algorithm such that the learning

becomes more and more accurate as time passes by. You will be able to define an optimal solution

for an agent based on agent environment interaction.

Objective:

At the end of this module, you should be able to

 Explain the concept of Reinforcement Learning·

 Generalize a problem using Reinforcement Learning·

 Explain Markov’s Decision Process·

 Demonstrate Q Learning·

Topics:

 What is Reinforcement Learning·

 Why Reinforcement Learning·

 Elements of Reinforcement Learning·

 Exploration vs Exploitation dilemma·

 

 Epsilon Greedy Algorithm·

 Markov Decision Process (MDP)·

 Q values and V values·

 Q – Learning·

 values·

Skills:

 Implement Reinforcement Learning using python·

 Developing Q Learning model in python·

Hands On:

 Calculating Reward·

 Discounted Reward·

 Calculating Optimal quantities·

 Implementing Q Learning·

 Setting up an Optimal Action·

 

Module 11:Time Series Analysis

Goal:

In this module, you will learn about Time Series Analysis to forecast dependent variables based on

time. You will be taught different models for time series modelling such that you analyse a real time

dependent data for forecasting.

Objective:

At the end of this module, you should be able to:

 Explain Time Series Analysis (TSA)·

 Discuss the need of TSA·

 Describe ARIMA modelling·

 Forecast the time series model·

Topics:

 What is Time Series Analysis?·

 Importance of TSA·

 Components of TSA·

 White Noise·

 AR model·

 MA model·

 ARMA model·

 ARIMA model·

 Stationarity·

 ACF· & PACF

Skills:

 TSA in Python·

 

Hands on:

 Checking Stationarity·

 Converting a non-stationary data to stationary·

 Implementing Dickey Fuller Test·

 Plot ACF and PACF·

 Generating the ARIMA plot·

 TSA Forecasting·

 

Module 12:Model Selection and Boosting

Goal:

In this module, you will learn about selecting one model over another. Also, you will learn about

Boosting and its importance in Machine Learning. You will learn on how to convert weaker

algorithms to stronger ones.

Objective:

At the end of this module, you should be able to:

 Discuss Model Selection·

 Define Boosting·

 Express the need of Boosting·

 Explain the working of Boosting algorithm·

Topics:

 What is Model Selection?·

 Need of Model Selection·

 Cross – Validation·

 What is Boosting?·

 How Boosting Algorithms work?·

 Types of Boosting Algorithms·

 Adaptive Boosting·

Skills:

 Model Selection·

 Boosting algorithm using python·

 

Hands on:

 Cross Validation·

 AdaBoost·