Python Foundations For Data Science: From Zero To Data Analy
Published 8/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.48 GB | Duration: 21h 10m
Published 8/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 7.48 GB | Duration: 21h 10m
Master Python for Data Manipulation, Visualization, and Introductory Machine Learning
What you'll learn
Foundational Python Programming: Acquire a strong grasp of Python basics, including data types, control structures, functions, and object-oriented programming.
Data Analysis and Manipulation: Master the use of Python libraries like NumPy and pandas to clean, manipulate, and analyze datasets.
Advanced Data Visualization: Learn to create visualizations using Matplotlib and Plotly to effectively communicate data-driven insights and trends.
Gain hands-on experience with PyTorch to build and evaluate machine learning models, including classification and regression tasks.
Develop robust and reliable code using error handling techniques and performing unit testing with pytest, ensuring your data analysis scripts run smoothly
As a bonus, explore Python fundamentals while having fun with turtle graphics, making the course accessible for both parents and children learning together
Requirements
A Computer with Internet Access: You’ll need a computer with a reliable internet connection to install the necessary software and access the course materials.
Motivation to Learn: This course is beginner-friendly, requiring no prior programming or data science experience. All you need is a willingness to learn and a desire to dive into Python for data science.
No prior experience is needed—just bring your curiosity and enthusiasm to learn Python and data science!
Description
Welcome to "Python Foundations for Data Science"!This course is your gateway to mastering Python for data analysis, whether you’re just getting started or looking to expand your skills. We begin with the basics, ensuring you build a solid foundation, then gradually move into data science applications.I'd like to stress that we do not assume a programming background and no background in Python is required.What You'll Learn:Python Foundations: Grasp the essentials of Python, including data types, strings, slicing, f-strings, and more, laying a solid base for data manipulation.Control and Conditional Statements: Master decision-making in Python using if-else statements and logical operators.Loops: Automate repetitive tasks with for and while loops, enhancing your coding efficiency.Capstone Project - Turtle Graphics: Apply your foundational knowledge in a fun, creative project using Python’s turtle graphics.Functions: Build reusable code with functions, understanding arguments, return values, and scope.Lists: Manage and manipulate collections of data with Python lists, including list comprehension.Equality vs. Identity: Dive deep into how Python handles data with topics like shallow vs. deep copy, and understanding type vs. isinstance.Error-Handling: Write robust code by mastering exception handling and error management.Recursive Programming: Solve complex problems elegantly with recursion and understand how it contrasts with iteration.Searching and Sorting Algorithms: Learn fundamental algorithms to optimize data processing.Advanced Data Structures: Explore data structures beyond lists, such as dictionaries, sets, and tuples, crucial for efficient data management.Object-Oriented Programming: Build scalable and maintainable code with classes, inheritance, polymorphism, and more, including an in-depth look at dunder methods.Unit Testing with pytest: Ensure your code’s reliability with automated tests using pytest, a critical skill for any developer.Files and Modules: Handle file input/output and organize your code effectively with modules.NumPy: Dive into numerical computing with NumPy, the backbone of data science in Python.Pandas: Master data manipulation and analysis with pandas, a must-know tool for data science.Matplotlib - Graphing and Statistics: Visualize data and perform statistical analysis using Matplotlib.Matplotlib - Image Processing: Explore basic image processing techniques using Matplotlib.PyTorch Fundamentals: Get started with deep learning using PyTorch, understanding tensors and neural networks.Why Enroll?Expert Guidance: Benefit from step-by-step tutorials and clear explanations.Responsive Support: Get prompt, helpful feedback from the instructor, with questions quickly addressed in the course Q&A.Flexible Learning: Study at your own pace with lifetime access to regularly updated course materials.Positive Learning Environment: Join a supportive and encouraging space where students and instructors collaboratively discuss and solve problems.Who This Course is For: Python Beginners: Ideal for those new to programming who want to start their Python journey with a focus on data science.Data Analysis Newcomers: Perfect for individuals with little to no experience in data analysis who want to build a strong foundation in Python.Aspiring Data Scientists: Designed for those looking to transition into data science, equipping you with essential skills and knowledge.Professionals Enhancing Their Skills: Suitable for professionals across various industries aiming to leverage Python for data-driven decision-making.Students and Academics: Valuable for students and researchers who need to analyze data for academic projects, research, or studies.Enroll now and start your journey to mastering Python for data science and data analysis!
Overview
Section 1: Introduction
Lecture 1 Introduction
Section 2: Foundations
Lecture 2 Introduction to Python Basics
Lecture 3 First steps in Python and the Python Programing Language Structure
Lecture 4 Python Program Structure - Input and Output
Lecture 5 Indentation and Code Blocks
Lecture 6 Using the Python Interpreter
Lecture 7 More Details on the Print function
Lecture 8 Basic Data Types in Python
Lecture 9 Numerical Operations
Lecture 10 Assignment and Incremental Assignment
Lecture 11 Multiple Assignments
Lecture 12 Variable Names, Snake Case, Camel Case
Lecture 13 Keywords and our first Import Statement
Lecture 14 Escape Sequences
Lecture 15 Data Type Conversions
Lecture 16 Substrings and Slicing
Lecture 17 Multiline Strings and Docstrings
Lecture 18 Installing and Introducing PyCharm
Section 3: Control Flow and Conditional Statements
Lecture 19 Introduction to Control Flow and Conditionals
Lecture 20 If Statement and Logical Operators
Lecture 21 Complex Conditions
Lecture 22 Nested If Statements
Section 4: Loops
Lecture 23 For Loops using Range
Lecture 24 General For Loops using Range
Lecture 25 Looping over Lists and Tuples
Lecture 26 Prime Numbers and Breaking out of Loops
Lecture 27 Looping over a List of Strings using Split
Lecture 28 While Loops
Lecture 29 The While Loop and Validating Input
Lecture 30 Factorial using the While Loop. Example of an Infinite While Loop
Lecture 31 Factorial using the While Loop and Incremental Assignment
Lecture 32 Nested Loops
Section 5: Capstone Project using Turtle Graphics
Lecture 33 Introducing Turtle Graphics
Lecture 34 Avoiding Magic Numbers
Lecture 35 Generalizing Example and using Parameters
Lecture 36 Completing Turtle Graphics Background
Lecture 37 Turtle Graphics Capstone Project
Section 6: Functions
Lecture 38 Introduction to Functions
Lecture 39 Simple Functions
Lecture 40 More Examples of Functions
Lecture 41 Functions with Default Parameters
Lecture 42 Breaking down Problems using Functions
Lecture 43 Function Scope, Local and Global Variables
Lecture 44 Accessing a global variable from within a function
Lecture 45 Call by Order vs Call by Name/Keyword Arguments
Lecture 46 Variable Number of Arguments in a Function call
Lecture 47 Sum Example with Type-Checking
Lecture 48 String Methods
Lecture 49 Type Annotations and Functions
Lecture 50 Type Annotations with Lists
Section 7: Lists
Lecture 51 Introduction to Lists
Lecture 52 List Methods
Lecture 53 Nested Lists
Lecture 54 List Slicing
Lecture 55 List Comprehensions
Lecture 56 List Comprehensions and Filtering
Lecture 57 For Loop Appending vs List Comprehension
Section 8: Equality vs Identity
Lecture 58 Aliasing
Lecture 59 Beware of the 'is' Operator
Lecture 60 Shallow Copy
Lecture 61 Deep Copy
Lecture 62 type vs isinstance
Lecture 63 Comparison and Inequalities
Lecture 64 Inequalities and Sorting
Lecture 65 Reverse Sorting
Lecture 66 General Sorting by a Key Function
Section 9: Exception and Error Handling
Lecture 67 Syntax vs Run-Time Errors
Lecture 68 TypeError in Average Function
Lecture 69 Catch all Errors
Lecture 70 Catch Multiple Exceptions
Lecture 71 Handling Exceptions Separately
Lecture 72 Using else and finally
Lecture 73 Safe Division Example
Lecture 74 Raising a Built-in Exception
Lecture 75 Example of Raising an Exception
Lecture 76 Raising a Custom Exception
Section 10: Recursive Programming
Lecture 77 Factorial Recursive vs Non-Recursive Implementation
Lecture 78 Implementing the Exponential Function using Recursion
Lecture 79 Simple Recursive Fibonacci.
Lecture 80 Counting number of calls in Simple Recursive Fibonacci
Lecture 81 Assignment Expressions and Efficient Fibonacci
Lecture 82 Comparing the Run-Time of Fibonacci Implementations
Section 11: Searching and Sorting Algorithms
Lecture 83 Linear Search Boolean
Lecture 84 Linear Search Return Index
Lecture 85 Searching a Sorted List - Birds-eye View of Binary Search
Lecture 86 Searching a Sorted List - Implementing Binary Search
Lecture 87 Worst-Case Run-time Complexity Linear vs Binary Search
Lecture 88 MaxSort
Lecture 89 BubbleSort
Lecture 90 QuickSort
Section 12: Data Structures beyond Lists
Lecture 91 Introducing Dictionaries
Lecture 92 Safely accessing Dictionaries using the get Method
Lecture 93 Real-World Example using Nested Data Structures and the get Method
Lecture 94 Dictionary Methods
Lecture 95 Introducing Tuples
Lecture 96 More on Tuples
Lecture 97 Tuple Methods index and count
Lecture 98 Introducing Sets
Lecture 99 Set Methods
Section 13: Object-Oriented Programming
Lecture 100 Classes, Instance Attributes, Class Attributes and Methods
Lecture 101 Encapsulation
Lecture 102 Inheritance
Lecture 103 Polymorphism
Lecture 104 Constructors and Destructors
Lecture 105 The hasattr Function
Lecture 106 The __str__ and __repr__ Methods
Lecture 107 Class Methods vs Static Methods vs Instance Methods
Lecture 108 Complex Numbers and Class, Static and Instance Methods
Lecture 109 Custom Equality and Comparison Operators for Classes in Python
Lecture 110 Dunder (Magic) Methods
Lecture 111 CODING EXERCISE: Fraction Class and Magic Methods
Lecture 112 CODING SOLUTION Part 1 - Fractional Addition and Subtraction
Lecture 113 CODING SOLUTION Part 2 - Subtraction Alternative, __str__, __repr__
Section 14: Unit Testing with pytest
Lecture 114 Introduction to Unit Testing with pytest
Lecture 115 Creating our First Tests using pytest
Lecture 116 Using pytest.mark.parametrize for Efficient Test Cases
Lecture 117 SOLUTION to pytest.mark.parametrize Exercise
Lecture 118 Folder Structure
Section 15: File-handling and Modules
Lecture 119 Getting Started - Reading Text Files
Lecture 120 The Methods read, readline, readlines
Lecture 121 CODING EXERCISE - Remove Comments
Lecture 122 CODING SOLUTION - Remove Comments
Lecture 123 Writing to Text Files
Lecture 124 Writing to files using F-Strings
Lecture 125 Writing to files using Print
Lecture 126 Leveraging the `with` Statement for Safe and Efficient Code
Lecture 127 File Access Mode
Lecture 128 File Exceptions
Lecture 129 File Methods
Lecture 130 Importing Modules and Custom Modules
Lecture 131 Importing Modules and Custom Modules continued
Section 16: NumPy
Lecture 132 Numpy Arrays, Shape and Reshape
Lecture 133 Numpy Arrays of Zeros, Ones and the Identity Matrix
Lecture 134 Empty and Random
Lecture 135 Indexing and Slicing in Numpy
Lecture 136 Arithmetic and Numpy
Lecture 137 Rough Idea of Linear Algebra and its Applications
Lecture 138 (ADVANCED) Concepts from Linear Algebra in Numpy
Lecture 139 Solving Linear Systems
Lecture 140 Logic: Element-wise Comparison
Lecture 141 Logic: Comparison with Scalars
Lecture 142 Logic: Filtering and Where
Section 17: Pandas
Lecture 143 Getting Started with Pandas: Titanic Dataset Analysis
Lecture 144 Filtering
Lecture 145 Filtering and the isin operator
Lecture 146 Filter rows using notna
Lecture 147 Examples of Filters and Logic
Lecture 148 Solutions to the Filtering Exercises from the Previous Lecture
Lecture 149 Filtering Columns
Lecture 150 Applying concat to Two Series
Section 18: Matplotlib, Graphing and Statistics
Lecture 151 Simple Bar Plot
Lecture 152 Bar Plot- Calories per Day
Lecture 153 Box Plot
Lecture 154 Real-World Scenario: Customer Satisfaction Analysis - Box Plot
Lecture 155 A Simple Scatter Plot
Lecture 156 Scatter Plot - Example - Average Daily Temperatures and Ice Cream Sales
Lecture 157 Comparing Groups with Scatter Plots
Lecture 158 Graphing a Function with Scatter Plot
Lecture 159 Graphing Lines
Lecture 160 Text Annotations
Lecture 161 Linear Regression
Lecture 162 Histograms
Lecture 163 Subplots
Lecture 164 Multiple Subplots with Different Colors and Titles
Lecture 165 Enchancing Titles using Latex
Lecture 166 Image Subplots
Lecture 167 Pie Chart
Lecture 168 Stack Plot
Lecture 169 Bar Chart
Lecture 170 3D Plot using a Mesh Grid
Section 19: Matplotlib and Image Processing
Lecture 171 Loading an RGB Image
Lecture 172 Extracting RGB Channels
Lecture 173 Converting an RGB Image to Gray-Scale
Lecture 174 Exploring Color Maps
Lecture 175 Creating n by n RGB images
Lecture 176 Image Manipulation - Thresholding
Lecture 177 Image Manipulation - Compression
Lecture 178 Image Manipulation - Squeeze Image
Lecture 179 Image Manipulation - Inverting Images
Lecture 180 Image Manipulation - Image Tiling
Section 20: Pytorch Fundamentals
Lecture 181 Google Colab and tqdm
Lecture 182 Getting Help
Lecture 183 Getting More Help
Lecture 184 Introducing Pytorch and Tensors 1
Lecture 185 Introducing Pytorch and Tensors 2
Lecture 186 Using the GPU
Lecture 187 Operators and More Operations
Lecture 188 Indexing and Masking
Lecture 189 Masking Continued
Lecture 190 Cloning Tensors
Lecture 191 Broadcasting - First Steps
Lecture 192 Broadcasting Continued
Lecture 193 More Broadcasting Examples
Python Beginners: Ideal for those new to programming who want to start their Python journey with a focus on data science.,Data Analysis Newcomers: Perfect for individuals with little to no experience in data analysis who want to build a strong foundation in Python.,Aspiring Data Scientists: Designed for those looking to transition into data science, equipping you with essential skills and knowledge.,Professionals Enhancing Their Skills: Suitable for professionals across various industries aiming to leverage Python for data-driven decision-making.,Students and Academics: Valuable for students and researchers who need to analyze data for academic projects, research, or studies.