Laptop with latest python installed
Prerequisite Skills: The Python syntax knowledge is recommended but not mandatory as these concepts will also be covered during the program. Participants should be aware of basic statistics and predictive modeling concepts.
Python Environment Setup and Essentials
Introduction to Python Language, features, the advantages of Python over other programming languages, Python installation, Windows, Mac & Linux distribution for Anaconda Python, deploying Python IDE, basic Python commands, data types, variables, keywords, and more.
Hands-on Exercise – Installing Python Anaconda for the Windows, Linux, and Mac.
Python language Basic Constructs
Built-in data types in Python, tabs and spaces indentation, code comment Pound # character, variables and names, Python built-in data types, Numeric, int, float, complex, list tuple, set dict, containers, text sequence, exceptions, instances, classes, modules, Str(String), Ellipsis Object, Null Object, Ellipsis, Debug, basic operators, comparison, arithmetic, slicing and slice operator, logical, bitwise, loop and control statements, while, for, if, break, else, continue.
Hands-on Exercise – Write your first Python program Write a Python Function (with and without parameters) Use Lambda expression Write a class, create a member function and a variable, create an object Write a for loop to print all odd numbers
OOP concepts in Python
How to write OOP concepts program in Python, connecting to a database, classes and objects in Python, OOPs paradigm, important concepts in OOP like polymorphism, inheritance, encapsulation, Python functions, return types, and parameters, Lambda expressions, connecting to database and pulling the data.
Hands-on Exercise – Creating an application which helps to check balance, deposit money and withdraw the money using the concepts of OOPS.
Understanding the Database, need of a database, Installing MySQL on windows, showing databases available in MySQL Database Server, creating a Database in MySQl Workbench and showing it, understanding a MySQL Connector, understanding Database connection using Python.
Hands-on Exercise – Demo on Database Connection using python and pulling the data.
NumPy for mathematical computing
Introduction to arrays and matrices, indexing of array, datatypes, broadcasting of array math, standard deviation, conditional probability, correlation and covariance.
Hands-on Exercise – How to import NumPy module, creating array using ND-array, calculating standard deviation on array of numbers, calculating correlation between two variables.
SciPy for scientific computing
Introduction to SciPy and its functions, building on top of NumPy, cluster, linalg, signal, optimize, integrate, subpackages, SciPy with Bayes Theorem.
Hands-on Exercise – Importing of SciPy, applying the Bayes theorem on the given dataset.
Matplotlib for data visualization
How to plot graph and chart with Python, various aspects of line, scatter, bar, histogram, 3D, the API of MatPlotLib, subplots.
Hands-on Exercise – deploying MatPlotLib for creating Pie, Scatter, Line, Histogram.
Pandas for data analysis and machine learning
Introduction to Python dataframes, importing data from JSON, CSV, Excel, SQL database, NumPy array to dataframe, various data operations like selecting, filtering, sorting, viewing, joining, combining, how to handle missing values, time series analysis, linear regression.
Hands-on Exercise – working on importing data from JSON files, selecting record by a group, applying filter on top, viewing records, analyzing with linear regression, and creation of time series.
Introduction to Exception Handling, scenarios in Exception Handling with its execution, Arithmetic exception, RAISE of Exception, what is Random List, running a Random list on Jupyter Notebook, Value Error in Exception Handling.
Hands-on Exercise – Demo on Exception Handling with an Industry-based Use Case.
Multi-Threading & Race Condition
Introduction to Thread, need of threads, what are thread functions, performing various operations on thread-like joining a thread, starting a thread, enumeration in a thread, creating a Multithread, finishing the multi-threads. Understanding Race Condition, lock, and Synchronization with lock.
Hands-on Exercise – Demo on Starting a Thread and a Multithread and then perform multiple operations on them.
Packages and Functions
Intro to modules in Python need of modules, how to import modules in python, the import statement, locating a module, namespace and scoping, arithmetic operations on Modules using a function, Intro to the Search path, Global and local functions, filter functions, Packages, Python Packages, import in packages, various ways of accessing the packages, Decorators, Pointer assignments, and Xldr.
Hands-on Exercise – Demo on Importing the modules and performing various operations on them using arithmetic functions, importing various packages and accessing them, and then performing different operations on them.
Web scraping with Python
Introduction to web scraping in Python, the various web scraping libraries, beautifulsoup, Scrapy Python packages, installing of beautifulsoup, installing Python parser lxml, creating soup object with input HTML, searching of tree, full or partial parsing, output print, searching the tree.
Hands-on Exercise – Installation of Beautiful soup and lxml Python parser, making a soup object with input HTML file, navigating using Py objects in soup tree.
Project 1: Analyzing the Naming Pattern Using Python
Problem Statement: How to analyze the trends and the most popular baby names
Topics: In this Python project, you will work with the United States Social Security Administration (SSA) which has made data on the frequency of baby names from 1880 to 2016 available. The project requires analyzing the data considering different methods. You will visualize the most frequent names, determine the naming trends and come up with the most popular names for a certain year.
Project 2: – Python Web Scraping for Data Science
In this project, you will be introduced to the process of web scraping using Python. It involves installation of Beautiful Soup, web scraping libraries, working on common data and page format on the web, learning the important kinds of objects, Navigable String, deploying the searching tree, navigation options, parser, search tree, searching by CSS class, list, function and keyword argument.
Project 3: Predicting Customer Churn in Telecom Company
Industry – Telecommunications
Problem Statement – How to increase the profitability of a telecom major by reducing the churn rate
Topics: In this project, you will work with the telecom company’s customer dataset. This dataset includes subscribing to telephone customer details. Each of the columns has data on phone numbers, call minutes during various times of the day, the charges incurred, lifetime account duration, and whether the customer has churned some services by unsubscribing them. The goal is to predict whether a customer will eventually churn or not.