title
Python for Data Science Full Course | Data Science Tutorials for Beginners in 2022 | Great Learning

description
πŸ”₯1000+ Free Courses With Free Certificates: https://www.mygreatlearning.com/academy?ambassador_code=GLYT_DES_JDcZBzb46ts&utm_source=GLYT&utm_campaign=GLYT_DES_JDcZBzb46ts Great Learning's "Python for data science” course is all about learning exciting ways of understanding the process of analyzing data and getting to know more about open libraries. Python for data science with python course aims to let our learners explore the multiple arenas of how to read data from multiple sources, which can be CSVs, Excel, and SQL. It's high time to learn and upgrade yourself with the art of processing data with the aid of NumPy Pandas and articulate the act of visualization with the aid of Matplotlib and other software. Learn how to read data, process it, visualize and create reports. We also have our primary focus on Python to help you have your biggest leap into Data Science. 🏁 Topics Covered: 00:00:00 Introduction 00:02:07 Agenda 00:02:59 Python, Pycharm & Anaconda Installation 00:06:21 Intro to Jupyter Notebook 00:11:15 Variables in Python 00:14:35 Data Types in Python 00:18:52 Operators in Python 00:26:43 Python Tokens: Keywords, Identifiers, Literals & Operators 00:46:14 Data Structures in Python: Tuple, List, Dictionary & Set 01:20:21 Flow Control Statements 01:44:34 Functions 01:59:32 Python Object-Oriented Programming: Class & Object 02:19:27 Inheritance in Python 02:49:55 Libraries in Python 02:51:25 Python Numpy 03:19:58 Python Pandas 03:50:03 Data Visualization with Python: Matplotlib 04:25:45 Data Visualization with Python: SeaBorn 05:26:01 Python Project on IPL Data 06:01:26 Python Project on FIFA 06:22:23 Python Project on Marvel and DC Characters 06:36:44 Introduction to Data Science 06:52:59 Machine Learning 06:56:34 Supervised Learning 07:00:40 Unsupervised Learning 07:03:25 Statistics For Data Science 07:39:11 Linear Regression 08:50:22 Logistic Regression 09:31:53 Time Series Analysis Check out our Free Courses on Python & Data Science with free certificate: βœ” Data Science with Python course: https://glacad.me/3Fdv2Nr βœ” Python for Non-Programmers: https://www.mygreatlearning.com/academy/learn-for-free/courses/python-for-non-programmers1?ambassador_code=GLYT_DES_Middle_SEP22&utm_source=GLYT&utm_campaign=GLYT_DES_Middle_SEP22 βœ” Python Libraries for Machine Learning: https://www.mygreatlearning.com/academy/learn-for-free/courses/python-libraries-for-machine-learning?ambassador_code=GLYT_DES_Middle_SEP22&utm_source=GLYT&utm_campaign=GLYT_DES_Middle_SEP22 βœ” Python IDLE: https://www.mygreatlearning.com/academy/learn-for-free/courses/python-idle?ambassador_code=GLYT_DES_Middle_SEP22&utm_source=GLYT&utm_campaign=GLYT_DES_Middle_SEP22 ⚑ About Great Learning Academy: Visit Great Learning Academy to get access to 1000+ free courses with free certificate on Data Science, Data Analytics, Digital Marketing, Artificial Intelligence, Big Data, Cloud, Management, Cybersecurity, Software Development, and many more. These are supplemented with free projects, assignments, datasets, quizzes. You can earn a certificate of completion at the end of the course for free. ABOUT GL: ⚑ About Great Learning: With more than 5.4 Million+ learners in 170+ countries, Great Learning, a part of the BYJU'S group, is a leading global edtech company for professional and higher education offering industry-relevant programs in the blended, classroom, and purely online modes across technology, data and business domains. These programs are developed in collaboration with the top institutions like Stanford Executive Education, MIT Professional Education, The University of Texas at Austin, NUS, IIT Madras, IIT Bombay & more. πŸ”Ή For more interesting tutorials, don't forget to subscribe to our channel: https://glacad.me/YTsubscribe πŸ”Ή For more updates on courses and tips follow us on: βœ… Telegram: https://t.me/GreatLearningAcademy βœ… Facebook: https://www.facebook.com/GreatLearningOfficial/ βœ… LinkedIn: https://www.linkedin.com/school/great-learning/mycompany/verification/ βœ… Follow our Blog: https://glacad.me/GL_Blog #pythontutorial #datascience

detail
{'title': 'Python for Data Science Full Course | Data Science Tutorials for Beginners in 2022 | Great Learning', 'heatmap': [{'end': 6243.904, 'start': 5875.403, 'weight': 0.712}, {'end': 6983.872, 'start': 6605.371, 'weight': 0.716}, {'end': 13589.373, 'start': 12853.885, 'weight': 1}, {'end': 14338.044, 'start': 13959.198, 'weight': 0.724}, {'end': 15436.436, 'start': 15055.536, 'weight': 0.938}], 'summary': 'A comprehensive python for data science course covering python basics, data manipulation, visualization with matplotlib and seaborn, data analysis of ipl matches and fifa dataset, linear and logistic regression, covid-19 data analysis, time series analysis, and business problem-solving potential of data science with various examples and practical applications.', 'chapters': [{'end': 116.76, 'segs': [{'end': 96.813, 'src': 'embed', 'start': 28.601, 'weight': 0, 'content': [{'end': 32.264, 'text': 'Before moving forward, I would like to tell you about the Great Learning Academy.', 'start': 28.601, 'duration': 3.663}, {'end': 36.107, 'text': 'This is a free initiative that Great Learning has started.', 'start': 32.304, 'duration': 3.803}, {'end': 46.416, 'text': 'Here you will get more than 200 courses in which you will get free content of thousands of hours, and that too, on in-demand topics like data science,', 'start': 36.147, 'duration': 10.269}, {'end': 54.661, 'text': 'machine learning, artificial intelligence programming, cloud computing, Digital Marketing, DevOps Management, and all this will be completely free.', 'start': 46.416, 'duration': 8.245}, {'end': 59.243, 'text': 'These courses are made by award-winning professors and leading industry experts.', 'start': 54.681, 'duration': 4.562}, {'end': 65.625, 'text': 'You just have to enroll in these courses and complete the course to get a free certification.', 'start': 59.363, 'duration': 6.262}, {'end': 68.907, 'text': 'And you will get a lot of benefits on enrolling.', 'start': 65.766, 'duration': 3.141}, {'end': 74.829, 'text': 'Like you will get access to app presentation, code, notebooks, data sets and quizzes.', 'start': 68.927, 'duration': 5.902}, {'end': 84.931, 'text': 'Here, you will get English and Hindi courses to give you an excellent experience in whichever language you are comfortable.', 'start': 76.57, 'duration': 8.361}, {'end': 90.592, 'text': 'You can access the description below this video in whichever course you are interested in.', 'start': 85.271, 'duration': 5.321}, {'end': 96.813, 'text': 'So what are you waiting for? Register and start your learning journey today.', 'start': 90.612, 'duration': 6.201}], 'summary': 'Great learning academy offers 200+ free courses on data science, ai, machine learning, cloud computing, digital marketing, and more, with free certification and additional benefits.', 'duration': 68.212, 'max_score': 28.601, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts28601.jpg'}], 'start': 0.669, 'title': 'Python for data science course', 'summary': 'Discusses the importance of data science, the applications of python in data science, and the benefits of enrolling in the free python for data science full course offered by great learning academy, which provides over 200 free courses in data science and other in-demand topics, along with free certifications and access to course materials.', 'chapters': [{'end': 116.76, 'start': 0.669, 'title': 'Python for data science course', 'summary': 'Discusses the importance of data science, the applications of python in data science, and the benefits of enrolling in the free python for data science full course offered by great learning academy, which provides over 200 free courses in data science, machine learning, artificial intelligence, and other in-demand topics, along with free certifications and access to course materials.', 'duration': 116.091, 'highlights': ['Great Learning Academy offers over 200 free courses in data science, machine learning, artificial intelligence, and other topics.', 'Benefits of enrolling in the free Python for Data Science full course include access to app presentation, code, notebooks, data sets, and quizzes.', 'The courses are made by award-winning professors and leading industry experts.']}], 'duration': 116.091, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts669.jpg', 'highlights': ['Great Learning Academy offers over 200 free courses in data science, machine learning, and AI.', 'Enrolling in the free Python for Data Science course provides access to app presentation, code, notebooks, data sets, and quizzes.', 'Courses are created by award-winning professors and leading industry experts.']}, {'end': 1604.825, 'segs': [{'end': 202.493, 'src': 'embed', 'start': 147.009, 'weight': 1, 'content': [{'end': 152.914, 'text': 'Moving forward, we will learn about object-oriented programming and implement OOPs through Python.', 'start': 147.009, 'duration': 5.905}, {'end': 161.842, 'text': 'After that, we will work with the primary libraries used for data science, which are NumPy, Pandas, Matplotlib, and Seaborn.', 'start': 152.994, 'duration': 8.848}, {'end': 169.949, 'text': 'After that, we will learn two very important data science or ML algorithms.', 'start': 161.922, 'duration': 8.027}, {'end': 174.133, 'text': 'One is linear regression and the other is logistic regression.', 'start': 170.009, 'duration': 4.124}, {'end': 178.055, 'text': 'And we are going to learn about time series as well.', 'start': 174.853, 'duration': 3.202}, {'end': 181.458, 'text': "First, let's see how to install Python.", 'start': 178.075, 'duration': 3.383}, {'end': 185.06, 'text': 'The link you see here is www.python.org.', 'start': 181.858, 'duration': 3.202}, {'end': 187.842, 'text': 'By going to this site, we can install Python.', 'start': 185.22, 'duration': 2.622}, {'end': 189.823, 'text': 'Let me click on this link.', 'start': 187.862, 'duration': 1.961}, {'end': 197.109, 'text': 'So this is our site and this is the latest version of Python, 3.8.', 'start': 191.564, 'duration': 5.545}, {'end': 202.493, 'text': '2 And whatever system you have, whether it is Windows, Linux or Mac, the Python version is available.', 'start': 197.109, 'duration': 5.384}], 'summary': 'Learn oops in python, numpy, pandas, matplotlib, seaborn, linear regression, logistic regression, time series, and python installation.', 'duration': 55.484, 'max_score': 147.009, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts147009.jpg'}, {'end': 256.123, 'src': 'embed', 'start': 229.993, 'weight': 3, 'content': [{'end': 234.836, 'text': 'Similarly, we have an IDE available for Python, which is known as PyCharm.', 'start': 229.993, 'duration': 4.843}, {'end': 240.078, 'text': 'And to install PyCharm, we will go to this site, www.jetbrains.com.', 'start': 235.336, 'duration': 4.742}, {'end': 246.92, 'text': 'So PyCharm, as I said, is an ID that gives us all the tools due to which we can program Python very easily.', 'start': 240.498, 'duration': 6.422}, {'end': 249.461, 'text': 'So I just click on this site.', 'start': 246.94, 'duration': 2.521}, {'end': 253.162, 'text': 'So here is the download option, I am clicking here.', 'start': 249.501, 'duration': 3.661}, {'end': 256.123, 'text': 'And we have the professional version and the community version.', 'start': 253.622, 'duration': 2.501}], 'summary': 'Pycharm ide for python available at www.jetbrains.com offers professional and community versions for easy programming.', 'duration': 26.13, 'max_score': 229.993, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts229993.jpg'}, {'end': 333.121, 'src': 'embed', 'start': 305.373, 'weight': 0, 'content': [{'end': 307.874, 'text': 'I am clicking on the download option again.', 'start': 305.373, 'duration': 2.501}, {'end': 313.675, 'text': 'So, as you can see here, quickly download 7500 plus Python R data science packages.', 'start': 308.274, 'duration': 5.401}, {'end': 317.516, 'text': 'So, Anaconda also gives you R packages and also gives you Python packages.', 'start': 313.995, 'duration': 3.521}, {'end': 320.957, 'text': 'And you can work with different libraries.', 'start': 317.636, 'duration': 3.321}, {'end': 325.639, 'text': 'You can make deep learning, machine learning models here.', 'start': 321.017, 'duration': 4.622}, {'end': 333.121, 'text': 'And all these visualization packages, you have smartplotlib, bokeh, data shader, you can work with all these things.', 'start': 325.719, 'duration': 7.402}], 'summary': 'Anaconda offers 7500+ python and r data science packages, including deep learning and machine learning libraries.', 'duration': 27.748, 'max_score': 305.373, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts305373.jpg'}, {'end': 395.86, 'src': 'embed', 'start': 369.571, 'weight': 4, 'content': [{'end': 376.853, 'text': 'And in the same way, if you have Linux, just click here, then click on the download button here, it will be downloaded.', 'start': 369.571, 'duration': 7.282}, {'end': 380.775, 'text': 'Because Anaconda is already installed, that work is done now.', 'start': 376.933, 'duration': 3.842}, {'end': 386.357, 'text': 'So now Anaconda gives us an IDE whose name is Jupyter Notebook.', 'start': 381.775, 'duration': 4.582}, {'end': 391.479, 'text': 'And here it is written that Jupyter Notebook is a browser-based interpreter.', 'start': 386.777, 'duration': 4.702}, {'end': 395.86, 'text': 'So this is actually an interpreter that runs through the browser.', 'start': 391.499, 'duration': 4.361}], 'summary': 'Anaconda provides jupyter notebook, a browser-based interpreter for linux users.', 'duration': 26.289, 'max_score': 369.571, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts369571.jpg'}, {'end': 469.967, 'src': 'embed', 'start': 441.163, 'weight': 5, 'content': [{'end': 449.112, 'text': 'And if we want to launch Jupyter Notebook, just click on Launch and it will automatically launch Jupyter Notebook.', 'start': 441.163, 'duration': 7.949}, {'end': 454.037, 'text': 'And as I told you, you will run all your coding on Jupyter Notebook.', 'start': 449.252, 'duration': 4.785}, {'end': 462.644, 'text': 'And similarly, if you want to use Prompt, then again, Here select Anaconda Prompt and this is your base environment.', 'start': 454.117, 'duration': 8.527}, {'end': 469.967, 'text': 'So here if you want to launch like this Jupiter space then you have to type notebook.', 'start': 463.024, 'duration': 6.943}], 'summary': "Launch jupyter notebook with one click and run all coding on it; launch jupiter by typing 'notebook' in anaconda prompt.", 'duration': 28.804, 'max_score': 441.163, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts441163.jpg'}], 'start': 117.241, 'title': 'Python for data science', 'summary': "Covers python basics, data structures, flow control, oops, numpy, pandas, matplotlib, seaborn, linear and logistic regression for data science and ml. it also discusses the installation of python, pycharm, and anaconda, jupyter notebook setup, variables, data types, and operators in python, highlighting python 3.8.2, pycharm as an ide, anaconda's distribution of 7500+ data science packages and support for different libraries and models, and insights into the features and functionalities of jupyter notebook.", 'chapters': [{'end': 174.133, 'start': 117.241, 'title': 'Python for data science', 'summary': 'Covers python basics, data structures, flow control, oops, numpy, pandas, matplotlib, seaborn, linear and logistic regression for data science and ml.', 'duration': 56.892, 'highlights': ['The chapter covers Python basics, data structures, flow control, OOPs, NumPy, Pandas, Matplotlib, Seaborn, linear and logistic regression for data science and ML.', 'Primary libraries used for data science are NumPy, Pandas, Matplotlib, and Seaborn.', 'Important data science or ML algorithms covered include linear regression and logistic regression.', 'Object-oriented programming is taught and implemented through Python.', 'Data structures like list, tuple, and dictionary are explained.']}, {'end': 369.511, 'start': 174.853, 'title': 'Installing python and ide for python programming', 'summary': "Discusses the installation of python, pycharm, and anaconda for python programming, highlighting the availability of python 3.8.2, pycharm as an ide, and anaconda's distribution of python and r packages, with a total of 7500+ data science packages and support for different libraries and models.", 'duration': 194.658, 'highlights': ['The latest version of Python, 3.8.2, is available for Windows, Linux, and Mac systems, and can be downloaded from www.python.org.', 'PyCharm, an IDE for Python programming, provides tools for easy Python programming and is available for download from www.jetbrains.com, offering a free community version as well as professional version.', 'Anaconda, a Python distribution, offers a variety of libraries like NumPy, Matplotlib, and provides an IDE, with the option to download from www.anaconda.com, offering 7500+ Python R data science packages, support for deep learning, machine learning models, and visualization packages like smartplotlib, bokeh, and data shader.']}, {'end': 680.339, 'start': 369.571, 'title': 'Setting up and using jupyter notebook', 'summary': 'Explains how to set up anaconda, launch jupyter notebook using anaconda navigator or prompt, and create and run a python program in jupyter notebook, providing insights into the features and functionalities of jupyter notebook.', 'duration': 310.768, 'highlights': ['Anaconda is installed, which provides Jupyter Notebook as an IDE for running Python programming through the browser.', 'Demonstration of launching Jupyter Notebook using Anaconda Navigator and Prompt, with instructions for both Windows and Mac systems.', 'Walkthrough of creating a new Python 3 notebook, saving it with .ipynb extension, and exploring the file, edit, and kernel options within Jupyter Notebook.', 'Introduction to writing and running a simple Python program using the print statement in Jupyter Notebook.', 'Overview of the basics of Python to be explored further.']}, {'end': 1604.825, 'start': 680.899, 'title': 'Variables, data types, and operators in python', 'summary': 'Explains the concept of variables, data types, and operators in python, where variables are used to store data, various data types include integer, floating point, boolean, string, and complex, and operators such as arithmetic, relational, and logical are used to perform operations on data.', 'duration': 923.926, 'highlights': ['Variables are used to store data, and they are a temporary storage space.', 'Data types in Python include integer, floating point, boolean, string, and complex, each serving different purposes.', 'Arithmetic, relational, and logical operators are used for performing operations on different types of data in Python.']}], 'duration': 1487.584, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts117241.jpg', 'highlights': ['Anaconda distribution offers 7500+ data science packages and support for different libraries and models', 'Python basics, data structures, flow control, OOPs, NumPy, Pandas, Matplotlib, Seaborn, linear and logistic regression covered', 'Python 3.8.2 available for Windows, Linux, and Mac systems', 'PyCharm provides tools for easy Python programming and is available for download', 'Anaconda provides Jupyter Notebook as an IDE for running Python programming through the browser', 'Demonstration of launching Jupyter Notebook using Anaconda Navigator and Prompt']}, {'end': 2753.377, 'segs': [{'end': 1659.673, 'src': 'embed', 'start': 1630.471, 'weight': 7, 'content': [{'end': 1633.454, 'text': 'So, we just have to cover keywords, identifiers and literals.', 'start': 1630.471, 'duration': 2.983}, {'end': 1635.936, 'text': 'So, we start with Python keywords.', 'start': 1633.494, 'duration': 2.442}, {'end': 1640.12, 'text': 'What are keywords? They are special reserved words.', 'start': 1635.956, 'duration': 4.164}, {'end': 1643.443, 'text': 'So, some words are reserved in Python.', 'start': 1640.52, 'duration': 2.923}, {'end': 1647.426, 'text': 'So, their importance is something special.', 'start': 1643.463, 'duration': 3.963}, {'end': 1650.208, 'text': "And you can't use them for anything else.", 'start': 1647.606, 'duration': 2.602}, {'end': 1651.349, 'text': 'So, these are all keywords.', 'start': 1650.228, 'duration': 1.121}, {'end': 1659.673, 'text': 'Yield and Like all these keywords, false, class, def, from, return, try, while.', 'start': 1651.369, 'duration': 8.304}], 'summary': 'Covered python keywords include yield, false, class, def, from, return, try, and while.', 'duration': 29.202, 'max_score': 1630.471, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1630471.jpg'}, {'end': 1752.57, 'src': 'embed', 'start': 1724.169, 'weight': 8, 'content': [{'end': 1726.671, 'text': 'After that, we know what are identifiers.', 'start': 1724.169, 'duration': 2.502}, {'end': 1731.916, 'text': 'So, identifiers are basically names used for variables, functions, and objects.', 'start': 1727.032, 'duration': 4.884}, {'end': 1737.962, 'text': 'So, whatever the name of the variable, function, or object is, those are called Python identifiers.', 'start': 1732.297, 'duration': 5.665}, {'end': 1739.944, 'text': 'And these are some special rules.', 'start': 1738.082, 'duration': 1.862}, {'end': 1740.144, 'text': 'So, py.', 'start': 1739.964, 'duration': 0.18}, {'end': 1746.188, 'text': 'So, the name of a variable can never start with an underscore.', 'start': 1742.006, 'duration': 4.182}, {'end': 1749.309, 'text': 'And identifiers are actually case sensitive.', 'start': 1746.828, 'duration': 2.481}, {'end': 1752.57, 'text': 'So, suppose you created a variable student.', 'start': 1749.629, 'duration': 2.941}], 'summary': 'Python identifiers are names for variables, functions, and objects, with special rules.', 'duration': 28.401, 'max_score': 1724.169, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1724169.jpg'}, {'end': 1886.783, 'src': 'embed', 'start': 1859.041, 'weight': 9, 'content': [{'end': 1864.405, 'text': 'And similarly, if I I write a floating point number 3.14.', 'start': 1859.041, 'duration': 5.364}, {'end': 1870.63, 'text': 'Again this floating point number is actually a literal whose value cannot be changed.', 'start': 1864.405, 'duration': 6.225}, {'end': 1874.112, 'text': 'So literals means basically the data whose value does not change.', 'start': 1871.03, 'duration': 3.082}, {'end': 1876.874, 'text': 'So this is the difference between variables and literals.', 'start': 1874.192, 'duration': 2.682}, {'end': 1879.295, 'text': 'So, we have covered the basic things.', 'start': 1878.234, 'duration': 1.061}, {'end': 1881.738, 'text': 'Now, we will work with Python strings.', 'start': 1879.315, 'duration': 2.423}, {'end': 1886.783, 'text': 'I have already told you that strings are sequence of characters.', 'start': 1881.838, 'duration': 4.945}], 'summary': "Variables can change, literals can't. strings are sequences of characters.", 'duration': 27.742, 'max_score': 1859.041, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1859041.jpg'}, {'end': 1929.161, 'src': 'embed', 'start': 1900.915, 'weight': 4, 'content': [{'end': 1904.517, 'text': 'After that there is another string This is Sparta which is stored in double quotes.', 'start': 1900.915, 'duration': 3.602}, {'end': 1909.66, 'text': 'After that there is another string I am going to France tomorrow which is stored in triple quotes.', 'start': 1904.597, 'duration': 5.063}, {'end': 1916.343, 'text': 'So suppose you have to write a string which is extended in two or three lines, or if you have to write a multi-line string,', 'start': 1909.7, 'duration': 6.643}, {'end': 1918.464, 'text': 'then you will use triple quotes.', 'start': 1916.343, 'duration': 2.121}, {'end': 1921.646, 'text': 'So I will give you an example of these three.', 'start': 1918.504, 'duration': 3.142}, {'end': 1929.161, 'text': 'So here I am creating my first string whose name I will give as str1 and I will use single quotes.', 'start': 1922.677, 'duration': 6.484}], 'summary': 'Demonstration of storing strings in single, double, and triple quotes.', 'duration': 28.246, 'max_score': 1900.915, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1900915.jpg'}, {'end': 2030.032, 'src': 'embed', 'start': 1998.045, 'weight': 5, 'content': [{'end': 2000.185, 'text': 'Then after that slash n ikn it.', 'start': 1998.045, 'duration': 2.14}, {'end': 2005.688, 'text': 'Right So like this we can store a multi-line string using triple quotes.', 'start': 2000.446, 'duration': 5.242}, {'end': 2007.95, 'text': 'So that was the basics of the string.', 'start': 2006.428, 'duration': 1.522}, {'end': 2010.312, 'text': "Now let's see how we can extract individual characters.", 'start': 2007.97, 'duration': 2.342}, {'end': 2016.72, 'text': 'So here I have created a string with the name MyNameIsJohn.', 'start': 2010.332, 'duration': 6.388}, {'end': 2025.87, 'text': 'So the value is MyNameIsJohn and if I want to extract the first character from the whole string, So I will use indexing.', 'start': 2016.74, 'duration': 9.13}, {'end': 2030.032, 'text': 'So first of all, I will write the name of the variable which is myString.', 'start': 2026.05, 'duration': 3.982}], 'summary': 'Introduction to storing multi-line string and extracting individual characters using indexing.', 'duration': 31.987, 'max_score': 1998.045, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1998045.jpg'}, {'end': 2074.304, 'src': 'embed', 'start': 2046.704, 'weight': 6, 'content': [{'end': 2057.851, 'text': 'So indexing starts from 0 and if I want first index value means first character which is present at 0 at index, I will write 0 here and I will get M.', 'start': 2046.704, 'duration': 11.147}, {'end': 2066.118, 'text': 'And similarly if I want last character then I will write minus 1 in braces which will give me last character.', 'start': 2057.851, 'duration': 8.267}, {'end': 2071.442, 'text': "I'll show you this example again by implementing it in Python.", 'start': 2068.84, 'duration': 2.602}, {'end': 2074.304, 'text': "First of all, I'll create a variable.", 'start': 2071.502, 'duration': 2.802}], 'summary': 'Indexing in python starts from 0, and -1 refers to the last character.', 'duration': 27.6, 'max_score': 2046.704, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2046704.jpg'}, {'end': 2241.513, 'src': 'embed', 'start': 2207.452, 'weight': 0, 'content': [{'end': 2210.153, 'text': 'So we have seen how to extract individual characters from a string.', 'start': 2207.452, 'duration': 2.701}, {'end': 2212.895, 'text': "So now let's work with some string functions.", 'start': 2210.173, 'duration': 2.722}, {'end': 2218.538, 'text': 'So suppose I want to find the length of the string, then I will use the len function.', 'start': 2212.915, 'duration': 5.623}, {'end': 2223.78, 'text': 'In the len function, I will just put this string, so it will tell me that there are 15 characters in the string.', 'start': 2218.958, 'duration': 4.822}, {'end': 2226.762, 'text': 'And the space is also included in these 15 characters.', 'start': 2223.88, 'duration': 2.882}, {'end': 2233.787, 'text': 'and suppose I have to convert the string to lower case, then I will use dot lower method.', 'start': 2229.063, 'duration': 4.724}, {'end': 2241.513, 'text': 'So, first I am giving the name of the string, after that I will use dot lower method, then it will give me the result in full lower case.', 'start': 2233.807, 'duration': 7.706}], 'summary': 'Exploring string functions: len function returns 15 characters; dot lower method converts to lower case.', 'duration': 34.061, 'max_score': 2207.452, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2207452.jpg'}, {'end': 2415.296, 'src': 'embed', 'start': 2384.583, 'weight': 1, 'content': [{'end': 2388.084, 'text': 'So, here initially it was y, I have replaced it with a.', 'start': 2384.583, 'duration': 3.501}, {'end': 2391.586, 'text': 'So, my name is John, changed to my name is John.', 'start': 2388.084, 'duration': 3.502}, {'end': 2395.187, 'text': 'After that, we have another function named count.', 'start': 2392.466, 'duration': 2.721}, {'end': 2400.689, 'text': 'So, if we want to know how many times a substring is being repeated.', 'start': 2395.207, 'duration': 5.482}, {'end': 2404.471, 'text': 'So, here we have a string, hello hello world.', 'start': 2401.15, 'duration': 3.321}, {'end': 2409.293, 'text': 'So, if I want to know how many times hello is being repeated, then I can use the count method.', 'start': 2405.011, 'duration': 4.282}, {'end': 2415.296, 'text': 'And in the count method, I am taking only one parameter and that one parameter is hello.', 'start': 2409.433, 'duration': 5.863}], 'summary': "Replaced 'y' with 'a', changed name to john, and counted 'hello' occurrences.", 'duration': 30.713, 'max_score': 2384.583, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2384583.jpg'}, {'end': 2628.399, 'src': 'embed', 'start': 2597.065, 'weight': 2, 'content': [{'end': 2599.365, 'text': "And we don't need to give the full word.", 'start': 2597.065, 'duration': 2.3}, {'end': 2605.386, 'text': 'So if we want the index of the first character of any character or any substring, then we can use the find method.', 'start': 2599.425, 'duration': 5.961}, {'end': 2613.57, 'text': 'Suppose you have a string which is separated by a comma.', 'start': 2608.567, 'duration': 5.003}, {'end': 2616.712, 'text': 'And we have to divide that string into three parts.', 'start': 2613.79, 'duration': 2.922}, {'end': 2619.414, 'text': 'So we can use the split method.', 'start': 2616.832, 'duration': 2.582}, {'end': 2628.399, 'text': 'So as you can see, after comma, So, as you can see here, wherever there is a comma, I have to show that thing as a separate entity.', 'start': 2619.654, 'duration': 8.745}], 'summary': 'Using find and split methods to manipulate strings.', 'duration': 31.334, 'max_score': 2597.065, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2597065.jpg'}], 'start': 1604.885, 'title': 'Python tokens, basics, strings, and functions', 'summary': 'Covers python tokens, keywords, identifiers, literals, and operators, emphasizing their significance and rules. it also explains string basics, character extraction, and various string functions with quantifiable data.', 'chapters': [{'end': 1881.738, 'start': 1604.885, 'title': 'Python tokens and basics', 'summary': 'Covers python tokens including keywords, identifiers, literals, and operators, highlighting the significance and rules for each, as well as showcasing examples. it emphasizes the importance of keywords and their special reserved status, the rules for identifiers including case sensitivity, and the concept of literals as constant values that cannot be changed.', 'duration': 276.853, 'highlights': ['Python keywords are special reserved words in Python with some special importance, including examples like true, def, and class, which cannot be used for variable names, function names, or class names.', 'Python identifiers are names used for variables, functions, and objects with special rules such as not starting with an underscore, being case sensitive, and not starting with a digit.', 'Python literals are constants whose value cannot be changed, such as strings and floating point numbers.']}, {'end': 2206.006, 'start': 1881.838, 'title': 'Python strings and character extraction', 'summary': 'Explains the basics of strings in python and demonstrates the process of creating, accessing individual characters and extracting sequences from strings using indexing and slicing, with examples of single quotes, double quotes, and triple quotes.', 'duration': 324.168, 'highlights': ['Triple quotes are used for creating multi-line strings in Python and can be accessed using indexing.', 'Demonstrates the process of extracting individual characters from a string using indexing, with examples of accessing the first and last characters.', 'Illustrates the concept of slicing to extract a sequence of characters from a string using index values and demonstrates the inclusivity of index values in Python slicing.']}, {'end': 2753.377, 'start': 2207.452, 'title': 'Working with string functions', 'summary': "Discusses various string functions, such as finding the length of a string using 'len', converting to lower and upper case, replacing characters, counting substrings, finding index values of characters using 'find', and splitting strings based on a specified criteria, with examples and quantifiable data.", 'duration': 545.925, 'highlights': ["The chapter covers various string functions including finding the string length using 'len', converting to lower and upper case, and replacing characters, with examples and quantifiable data.", "The chapter explains how to count the number of times a substring is repeated using the 'count' method, with a specific example demonstrating the count of a substring.", "The chapter demonstrates the usage of the 'find' method to find the index value of a character in a string, with a practical example showcasing the index value of a specific character.", "The chapter illustrates the 'split' method to divide a string into separate entities based on a specified criteria, with an example showcasing the splitting of a string based on a specific character."]}], 'duration': 1148.492, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts1604885.jpg', 'highlights': ["The chapter covers various string functions including finding the string length using 'len', converting to lower and upper case, and replacing characters, with examples and quantifiable data.", "The chapter explains how to count the number of times a substring is repeated using the 'count' method, with a specific example demonstrating the count of a substring.", "The chapter demonstrates the usage of the 'find' method to find the index value of a character in a string, with a practical example showcasing the index value of a specific character.", "The chapter illustrates the 'split' method to divide a string into separate entities based on a specified criteria, with an example showcasing the splitting of a string based on a specific character.", 'Triple quotes are used for creating multi-line strings in Python and can be accessed using indexing.', 'Demonstrates the process of extracting individual characters from a string using indexing, with examples of accessing the first and last characters.', 'Illustrates the concept of slicing to extract a sequence of characters from a string using index values and demonstrates the inclusivity of index values in Python slicing.', 'Python keywords are special reserved words in Python with some special importance, including examples like true, def, and class, which cannot be used for variable names, function names, or class names.', 'Python identifiers are names used for variables, functions, and objects with special rules such as not starting with an underscore, being case sensitive, and not starting with a digit.', 'Python literals are constants whose value cannot be changed, such as strings and floating point numbers.']}, {'end': 4792.496, 'segs': [{'end': 2808.147, 'src': 'embed', 'start': 2779.291, 'weight': 0, 'content': [{'end': 2782.312, 'text': 'So, in Python, there are four basic data structures.', 'start': 2779.291, 'duration': 3.021}, {'end': 2785.034, 'text': 'That is, tuple, list, dictionary and set.', 'start': 2782.332, 'duration': 2.702}, {'end': 2788.936, 'text': 'So, first of all, it starts with a tuple.', 'start': 2785.734, 'duration': 3.202}, {'end': 2793.999, 'text': 'So, as written here, tuple is an ordered collection of elements enclosed within round brackets.', 'start': 2788.956, 'duration': 5.043}, {'end': 2796.42, 'text': 'So, this is an ordered collection of elements.', 'start': 2794.019, 'duration': 2.401}, {'end': 2800.903, 'text': 'So, till now, we were working with variables in which you could store only one value.', 'start': 2796.44, 'duration': 4.463}, {'end': 2808.147, 'text': 'So now as the data increases, you will have to store a lot of elements together.', 'start': 2802.344, 'duration': 5.803}], 'summary': 'Python has four basic data structures: tuple, list, dictionary, and set. tuples are ordered collections enclosed in round brackets.', 'duration': 28.856, 'max_score': 2779.291, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2779291.jpg'}, {'end': 3273.976, 'src': 'embed', 'start': 3224.53, 'weight': 8, 'content': [{'end': 3228.113, 'text': 'And here I am repeating these two elements three times.', 'start': 3224.53, 'duration': 3.583}, {'end': 3234.978, 'text': 'So if you want to repeat, just use the INTO operator and enter the number as many times as you want to repeat.', 'start': 3228.153, 'duration': 6.825}, {'end': 3240.063, 'text': 'Because I have to repeat three times, here I am doing INTO 3 and all this has been repeated here.', 'start': 3235.239, 'duration': 4.824}, {'end': 3242.584, 'text': 'So, we are doing some complicated operation here.', 'start': 3240.663, 'duration': 1.921}, {'end': 3246.206, 'text': 'I mean it is not too complicated but it is a bit for basics.', 'start': 3242.604, 'duration': 3.602}, {'end': 3251.668, 'text': 'So, here is TUP1 and TUP2 and firstly I am repeating TUP1 three times.', 'start': 3246.746, 'duration': 4.922}, {'end': 3256.391, 'text': 'After repeating three times, I am concatenating all the elements in TUP2.', 'start': 3251.768, 'duration': 4.623}, {'end': 3258.271, 'text': "So, let's see these two examples once.", 'start': 3256.411, 'duration': 1.86}, {'end': 3264.834, 'text': 'So, we have tup1 and tup2 already present.', 'start': 3261.693, 'duration': 3.141}, {'end': 3269.635, 'text': 'So, if I want to repeat the elements of tup1 5 times, then I write tup1 into 5.', 'start': 3264.854, 'duration': 4.781}, {'end': 3271.175, 'text': "Let's see what the result is.", 'start': 3269.635, 'duration': 1.54}, {'end': 3273.976, 'text': 'So, as you can see, 1, 2, 3, 5 times have been repeated.', 'start': 3271.195, 'duration': 2.781}], 'summary': 'Demonstration of repeating elements using into operator and concatenating tuples, with an example of repeating tup1 5 times resulting in 1, 2, 3, 5 times repetition.', 'duration': 49.446, 'max_score': 3224.53, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts3224530.jpg'}, {'end': 3550.552, 'src': 'embed', 'start': 3521.934, 'weight': 3, 'content': [{'end': 3532.585, 'text': 'So here I write L1 again and after this my index value starts from 1 and goes up to 3.', 'start': 3521.934, 'duration': 10.651}, {'end': 3535.386, 'text': 'So I have extracted Sparta and 3.14 from this whole list.', 'start': 3532.585, 'duration': 2.801}, {'end': 3539.128, 'text': "Now let's see how we can change the values of a list.", 'start': 3535.446, 'duration': 3.682}, {'end': 3544.59, 'text': 'Because the list is mutable, which means you can change its values.', 'start': 3539.148, 'duration': 5.442}, {'end': 3547.791, 'text': 'So initially in this list, the value of the first element was 1.', 'start': 3544.61, 'duration': 3.181}, {'end': 3550.552, 'text': 'And I am changing that value from 100.', 'start': 3547.791, 'duration': 2.761}], 'summary': "Extracted 'sparta' and '3.14' from a list and changed the first element's value from 1 to 100.", 'duration': 28.618, 'max_score': 3521.934, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts3521934.jpg'}, {'end': 3703.628, 'src': 'embed', 'start': 3667.993, 'weight': 4, 'content': [{'end': 3671.817, 'text': 'So here we have a list in which all these elements are present.', 'start': 3667.993, 'duration': 3.824}, {'end': 3676.241, 'text': 'So if I want to reverse all these elements then I can use the reverse method.', 'start': 3671.837, 'duration': 4.404}, {'end': 3682.346, 'text': 'So initially this was the list, I used the reverse method and you can see that all these elements have been reversed.', 'start': 3676.381, 'duration': 5.965}, {'end': 3689.693, 'text': 'Similarly, if I have to insert an element on a specified index, then I can use the insert method.', 'start': 3683.346, 'duration': 6.347}, {'end': 3694.158, 'text': 'So, all these are my elements and I have to insert Sparta on index number 1.', 'start': 3689.833, 'duration': 4.325}, {'end': 3703.628, 'text': 'So, after this I print L1 and you can see that Sparta is printed on index number 1 and the rest of the elements are one step ahead.', 'start': 3694.158, 'duration': 9.47}], 'summary': 'Demonstrating list manipulation methods: reverse and insert.', 'duration': 35.635, 'max_score': 3667.993, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts3667993.jpg'}, {'end': 4004.245, 'src': 'embed', 'start': 3978.759, 'weight': 6, 'content': [{'end': 3984.905, 'text': 'So as written here, dictionary is an unordered collection of key value pairs enclosed within these curly braces.', 'start': 3978.759, 'duration': 6.146}, {'end': 3992.193, 'text': 'So the difference between Dictionary and other data structures is that in Dictionary we have Key-Value-Pair.', 'start': 3985.546, 'duration': 6.647}, {'end': 3995.656, 'text': 'So as you can see here, Apple is 10.', 'start': 3992.213, 'duration': 3.443}, {'end': 3998.379, 'text': 'So Apple is our Key and 10 is our Value.', 'start': 3995.656, 'duration': 2.723}, {'end': 4002.544, 'text': 'Similarly, Orange is our Key and 20 is our Value.', 'start': 3998.76, 'duration': 3.784}, {'end': 4004.245, 'text': 'So Key-Value-Pair.', 'start': 4002.904, 'duration': 1.341}], 'summary': 'Dictionary is an unordered collection of key-value pairs. apple: 10, orange: 20.', 'duration': 25.486, 'max_score': 3978.759, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts3978759.jpg'}, {'end': 4134.362, 'src': 'embed', 'start': 4108.014, 'weight': 1, 'content': [{'end': 4112.676, 'text': 'So, fruit which is the name of the dictionary, dot operator, you use the values method.', 'start': 4108.014, 'duration': 4.662}, {'end': 4115.158, 'text': 'So, you are extracting all the values from the values here.', 'start': 4112.777, 'duration': 2.381}, {'end': 4121.506, 'text': 'So, we already have this dictionary ready and I just have to extract the keys.', 'start': 4117.042, 'duration': 4.464}, {'end': 4127.875, 'text': 'So, after typing d1.keys, I will press enter and I have got this result.', 'start': 4121.527, 'duration': 6.348}, {'end': 4131.939, 'text': 'So, dict keys is telling me that all these keys are present in this dictionary.', 'start': 4127.955, 'duration': 3.984}, {'end': 4134.362, 'text': 'Similarly, if I want values, type d1.values.', 'start': 4131.959, 'duration': 2.403}], 'summary': 'Using python to extract keys and values from a dictionary.', 'duration': 26.348, 'max_score': 4108.014, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts4108014.jpg'}, {'end': 4566.706, 'src': 'embed', 'start': 4521.499, 'weight': 2, 'content': [{'end': 4527.945, 'text': 'As you can see, all the duplicates are not stored because duplicates are not allowed in the set.', 'start': 4521.499, 'duration': 6.446}, {'end': 4530.507, 'text': "So now let's see some basic operations of the set.", 'start': 4527.965, 'duration': 2.542}, {'end': 4536.413, 'text': 'So now suppose we have to add some new element in the set and because the set is mutable, we can add new elements.', 'start': 4530.527, 'duration': 5.886}, {'end': 4539.917, 'text': 'So here all these individual elements are already there.', 'start': 4537.714, 'duration': 2.203}, {'end': 4542.019, 'text': 'I have added a new element which is hello.', 'start': 4539.937, 'duration': 2.082}, {'end': 4546.764, 'text': 'So use the s1.add method and add a new element to it.', 'start': 4542.359, 'duration': 4.405}, {'end': 4549.247, 'text': 'And that new element will be inserted in a random order.', 'start': 4546.885, 'duration': 2.362}, {'end': 4555.334, 'text': 'And it has been inserted in a random order because it is an unordered collection of elements.', 'start': 4549.267, 'duration': 6.067}, {'end': 4560.78, 'text': 'Similarly, if you want to add multiple elements, you will use the update method.', 'start': 4556.095, 'duration': 4.685}, {'end': 4563.763, 'text': 'After using the update method, you will pass a list here.', 'start': 4560.88, 'duration': 2.883}, {'end': 4566.706, 'text': 'And I am adding 10, 20, 20 in this list.', 'start': 4563.883, 'duration': 2.823}], 'summary': 'Demonstration of set operations: adding new elements, preventing duplicates, and updating with multiple elements.', 'duration': 45.207, 'max_score': 4521.499, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts4521499.jpg'}, {'end': 4734.243, 'src': 'embed', 'start': 4709.028, 'weight': 5, 'content': [{'end': 4716.753, 'text': 'And if I want to do union of these two, means if I want to combine or concatenate the elements of these two, then you can use the union operator.', 'start': 4709.028, 'duration': 7.725}, {'end': 4723.518, 'text': 'So as you can see S1 dot union S2, these two have been unionized and these two elements have come in one set.', 'start': 4717.193, 'duration': 6.325}, {'end': 4730.701, 'text': 'Similarly, if I want to know which are the common elements between two sets, then I can use the intersection method.', 'start': 4724.318, 'duration': 6.383}, {'end': 4734.243, 'text': 'So, all these values have come in S1 and all these values have come in S2.', 'start': 4730.721, 'duration': 3.522}], 'summary': 'Using union and intersection methods to combine and find common elements in sets.', 'duration': 25.215, 'max_score': 4709.028, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts4709028.jpg'}], 'start': 2756.42, 'title': 'Python data structures and manipulation', 'summary': 'Covers python data structures such as tuple and list, demonstrating operations like indexing, concatenation, and finding minimum and maximum values. it also explores manipulating and accessing lists, list manipulation methods, dictionary introduction, dictionary operations, set operations, and basic set operations, with examples and explanations.', 'chapters': [{'end': 3448.59, 'start': 2756.42, 'title': 'Python data structures', 'summary': 'Covers the basics of python data structures, focusing on tuple and list. it explains the properties of tuple as an ordered, immutable collection and demonstrates operations like indexing, concatenation, and finding minimum and maximum values.', 'duration': 692.17, 'highlights': ['Python has four basic data structures: tuple, list, dictionary, and set', 'Tuple is an ordered collection of immutable elements enclosed within round brackets', 'Tuples can store heterogeneous elements and support indexing and concatenation operations', 'Demo of accessing individual elements from a tuple using indexing and extracting subsets', 'Demonstration of tuple immutability and the resulting error when attempting to modify elements', 'Usage of len() and concatenation operations with tuples', 'Demonstration of repeating tuple elements and concatenating multiple tuples']}, {'end': 3667.953, 'start': 3448.89, 'title': 'Manipulating and accessing lists in python', 'summary': 'Covers accessing, modifying, and updating elements in a list in python, including indexing, slicing, changing values, adding elements with append method, and removing elements with pop method.', 'duration': 219.063, 'highlights': ['The chapter covers accessing, modifying, and updating elements in a list in Python.', 'Including indexing, slicing, changing values, adding elements with append method, and removing elements with pop method.', 'I have replaced 1 with 100.', 'Adding a floating point number to the list using the append method, which is minus 87.99.', 'Removing an element, specifically removing minus 87.99 from the list.']}, {'end': 4026.117, 'start': 3667.993, 'title': 'List manipulation and dictionary introduction', 'summary': 'Covers list manipulation methods including reverse, insert, and sort, demonstrating their functionality with examples. it also introduces the concept of dictionaries as an unordered collection of key-value pairs.', 'duration': 358.124, 'highlights': ["The chapter demonstrates the reverse method by reversing a list and provides examples of inserting elements at specific indices, showcasing the resulting changes in the list's structure.", 'It showcases the sort method to alphabetically arrange the elements of a list and demonstrates the functionality with examples.', 'The transcript introduces the concept of dictionaries as an unordered collection of key-value pairs and highlights the mutability of dictionaries, allowing for changes to be made after creation.', 'It illustrates list manipulation operations such as concatenation using the plus operator and repetition using the INTO operator, providing examples to demonstrate the resulting concatenated and repeated lists.']}, {'end': 4521.439, 'start': 4026.157, 'title': 'Dictionary and set operations', 'summary': 'Covers dictionary operations including adding, modifying, updating, and removing key-value pairs, as well as set operations demonstrating how to create and manipulate sets, with examples of appending, updating, and removing elements.', 'duration': 495.282, 'highlights': ['The cost of Apple is 50, Mango is 100, Guava is 200, and Banana is 500.', 'Demonstration of extracting keys and values from a dictionary using predefined methods.', 'Addition and modification of key-value pairs in the dictionary.', 'Usage of update method to append and update elements from one dictionary to another.', 'Creation and manipulation of sets, including examples of adding, updating, and removing elements.']}, {'end': 4792.496, 'start': 4521.499, 'title': 'Set operations and functions', 'summary': 'Discusses the basic operations of sets including adding and removing elements, updating sets, and performing union and intersection operations, with examples and explanations of the results.', 'duration': 270.997, 'highlights': ['The chapter explains the process of adding new elements to a set using the add and update methods, demonstrating the ability to insert new elements and update the set with multiple elements in a random order.', "It illustrates the use of the remove method to eliminate specific elements from a set, showcasing the successful removal of elements, such as 'B' and 'hello'.", 'The chapter demonstrates the union operation by combining the elements of two sets using the union operator, as well as the intersection method to identify common elements between sets, providing examples of the combined and intersected sets with clear and concise explanations.']}], 'duration': 2036.076, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts2756420.jpg', 'highlights': ['Python has four basic data structures: tuple, list, dictionary, and set', 'Demonstration of extracting keys and values from a dictionary using predefined methods', 'The chapter explains the process of adding new elements to a set using the add and update methods, demonstrating the ability to insert new elements and update the set with multiple elements in a random order', 'The chapter covers accessing, modifying, and updating elements in a list in Python, including indexing, slicing, changing values, adding elements with append method, and removing elements with pop method', "The chapter demonstrates the reverse method by reversing a list and provides examples of inserting elements at specific indices, showcasing the resulting changes in the list's structure", 'The chapter demonstrates the union operation by combining the elements of two sets using the union operator, as well as the intersection method to identify common elements between sets, providing examples of the combined and intersected sets with clear and concise explanations', 'The transcript introduces the concept of dictionaries as an unordered collection of key-value pairs and highlights the mutability of dictionaries, allowing for changes to be made after creation', 'Creation and manipulation of sets, including examples of adding, updating, and removing elements', 'Illustrates list manipulation operations such as concatenation using the plus operator and repetition using the INTO operator, providing examples to demonstrate the resulting concatenated and repeated lists', 'Demonstration of repeating tuple elements and concatenating multiple tuples']}, {'end': 7154.056, 'segs': [{'end': 4852.872, 'src': 'embed', 'start': 4825.193, 'weight': 0, 'content': [{'end': 4829.994, 'text': 'So in your life, there will be a lot of situations where you have to take a decision.', 'start': 4825.193, 'duration': 4.801}, {'end': 4836.277, 'text': 'So suppose you have to play football but it is raining, so if it is raining then you cannot play football.', 'start': 4830.014, 'duration': 6.263}, {'end': 4841.701, 'text': 'A similar decision-making statement in Python is the if statement.', 'start': 4837.637, 'duration': 4.064}, {'end': 4844.364, 'text': "Let's understand the if statement through this example.", 'start': 4841.721, 'duration': 2.643}, {'end': 4848.808, 'text': "For example, you want to play football but it's raining.", 'start': 4844.744, 'duration': 4.064}, {'end': 4852.872, 'text': "If it's raining, you can't go out and play because you'll get sick.", 'start': 4848.828, 'duration': 4.044}], 'summary': "Making decisions using if statement in python, like not playing football when it's raining.", 'duration': 27.679, 'max_score': 4825.193, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts4825193.jpg'}, {'end': 5670.62, 'src': 'embed', 'start': 5646.808, 'weight': 3, 'content': [{'end': 5653.192, 'text': 'And how long will it repeat? Until you work less in that company, right? Until you work, you will keep getting salary.', 'start': 5646.808, 'duration': 6.384}, {'end': 5656.014, 'text': 'So, these are some examples of looping statements.', 'start': 5654.633, 'duration': 1.381}, {'end': 5659.215, 'text': 'So, we have two looping statements.', 'start': 5656.134, 'duration': 3.081}, {'end': 5660.896, 'text': 'One is while and the other is for.', 'start': 5659.255, 'duration': 1.641}, {'end': 5662.976, 'text': 'So, we will start with the while loop.', 'start': 5660.916, 'duration': 2.06}, {'end': 5665.798, 'text': 'So, you are seeing this flow diagram.', 'start': 5663.077, 'duration': 2.721}, {'end': 5670.62, 'text': 'So, first of all, we will enter in the while loop and we will do the condition test.', 'start': 5665.818, 'duration': 4.802}], 'summary': 'The lecture covers looping statements, including while and for, with a focus on condition testing.', 'duration': 23.812, 'max_score': 5646.808, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts5646808.jpg'}, {'end': 6243.904, 'src': 'heatmap', 'start': 5875.403, 'weight': 0.712, 'content': [{'end': 5878.604, 'text': '2 ones are 2, 2 twos are 4, from here to here, 2 tens are 20.', 'start': 5875.403, 'duration': 3.201}, {'end': 5881.365, 'text': "So let's understand this a little better.", 'start': 5878.604, 'duration': 2.761}, {'end': 5884.727, 'text': "Initially, i's value was 1, n's value was 2.", 'start': 5881.445, 'duration': 3.282}, {'end': 5886.367, 'text': 'We are entering while loop.', 'start': 5884.727, 'duration': 1.64}, {'end': 5890.849, 'text': "We are seeing, i's value is smaller than 10 or equal to 10, which is true.", 'start': 5886.387, 'duration': 4.462}, {'end': 5893.65, 'text': 'Because 1 is less than or equal to 10.', 'start': 5890.869, 'duration': 2.781}, {'end': 5898.413, 'text': 'After that, we will come here and print 2x1 is equal to 2.', 'start': 5893.65, 'duration': 4.763}, {'end': 5902.636, 'text': 'Then the value of i will be incremented and the value of i will be 2.', 'start': 5898.413, 'duration': 4.223}, {'end': 5907.039, 'text': 'Again, the value of 2 is less than 10, so we will enter it in the body.', 'start': 5902.636, 'duration': 4.403}, {'end': 5909.02, 'text': 'Then we will print 2x2 is equal to 4.', 'start': 5907.059, 'duration': 1.961}, {'end': 5910.181, 'text': 'After that, the value of i will be 3.', 'start': 5909.02, 'duration': 1.161}, {'end': 5910.921, 'text': '2x3 is equal to 6.', 'start': 5910.181, 'duration': 0.74}, {'end': 5913.283, 'text': 'The value of i will be 4.', 'start': 5910.921, 'duration': 2.362}, {'end': 5914.423, 'text': '2x4 is equal to 8.', 'start': 5913.283, 'duration': 1.14}, {'end': 5915.124, 'text': 'The value of i will be 5.', 'start': 5914.423, 'duration': 0.701}, {'end': 5915.744, 'text': '2x5 is equal to 10.', 'start': 5915.124, 'duration': 0.62}, {'end': 5918.806, 'text': 'So, we can print 2 tables like this.', 'start': 5915.744, 'duration': 3.062}, {'end': 5922.121, 'text': 'So these were some basic examples.', 'start': 5921.018, 'duration': 1.103}, {'end': 5925.21, 'text': "Now let's see how we can work with the while loop with the list.", 'start': 5922.141, 'duration': 3.069}, {'end': 5926.213, 'text': "I'll add a comment here.", 'start': 5925.29, 'duration': 0.923}, {'end': 5931.234, 'text': 'while with list.', 'start': 5929.873, 'duration': 1.361}, {'end': 5934.775, 'text': "So after this, I'll create a list.", 'start': 5931.954, 'duration': 2.821}, {'end': 5939.437, 'text': "l1 equal to and I'll add some values to it.", 'start': 5935.115, 'duration': 4.322}, {'end': 5941.138, 'text': '1, 2, 3, 4, and 5.', 'start': 5939.457, 'duration': 1.681}, {'end': 5942.879, 'text': 'My list is now ready.', 'start': 5941.138, 'duration': 1.741}, {'end': 5947.641, 'text': 'So now my aim is to add 100 values to each individual value.', 'start': 5943.339, 'duration': 4.302}, {'end': 5951.102, 'text': "So for this, I'll use while loop.", 'start': 5947.901, 'duration': 3.201}, {'end': 5957.318, 'text': "So first of all, I'll take a variable, i, and I'll initialize it from 0.", 'start': 5951.142, 'duration': 6.176}, {'end': 5958.078, 'text': 'So this is done.', 'start': 5957.318, 'duration': 0.76}, {'end': 5964.599, 'text': 'And my while loop will be my condition while i is less than length of L1.', 'start': 5958.698, 'duration': 5.901}, {'end': 5971.34, 'text': 'And basically length of L1 is telling us that initially its length is 1, 2, 3, 4, 5.', 'start': 5964.759, 'duration': 6.581}, {'end': 5972.361, 'text': 'So length of L1 is 5.', 'start': 5971.34, 'duration': 1.021}, {'end': 5975.201, 'text': 'So the value of i will go from 0 to 4.', 'start': 5972.361, 'duration': 2.84}, {'end': 5978.562, 'text': 'And what will I do in this while loop? L1 of i would be equal to L1 of i.', 'start': 5975.201, 'duration': 3.361}, {'end': 5986.963, 'text': 'plus 100.', 'start': 5986.423, 'duration': 0.54}, {'end': 5990.845, 'text': 'After that I have to increment the value of i.', 'start': 5986.963, 'duration': 3.882}, {'end': 5992.506, 'text': 'i is equal to i plus 1.', 'start': 5990.845, 'duration': 1.661}, {'end': 5994.447, 'text': 'So I enter it.', 'start': 5992.506, 'duration': 1.941}, {'end': 5995.047, 'text': 'Then I print L1.', 'start': 5994.467, 'duration': 0.58}, {'end': 5998.169, 'text': 'And as you can see initially in L1 there was 1, 2, 3, 4 or 5.', 'start': 5995.328, 'duration': 2.841}, {'end': 6000.65, 'text': 'After that I added 100 in all of them through while loop.', 'start': 5998.169, 'duration': 2.481}, {'end': 6010.097, 'text': 'And now the values are 101, 102, 103, 104 and 105.', 'start': 6000.75, 'duration': 9.347}, {'end': 6011.278, 'text': 'So this was a basic example.', 'start': 6010.097, 'duration': 1.181}, {'end': 6014.18, 'text': "So now let's see what is for loop.", 'start': 6011.598, 'duration': 2.582}, {'end': 6018.343, 'text': 'So for loop we can iterate on any sequence.', 'start': 6014.72, 'duration': 3.623}, {'end': 6023.146, 'text': 'And what is sequence? The data structures we saw are all sequences.', 'start': 6018.623, 'duration': 4.523}, {'end': 6027.35, 'text': 'So tuple, list, dictionary, you can even take string, these are all sequences.', 'start': 6023.467, 'duration': 3.883}, {'end': 6031.433, 'text': 'So if you want to iterate on any sequence of elements, then you can see for loop.', 'start': 6027.37, 'duration': 4.063}, {'end': 6037.136, 'text': 'And this is the syntax of for loop.', 'start': 6035.195, 'duration': 1.941}, {'end': 6039.217, 'text': 'For while in sequence.', 'start': 6037.276, 'duration': 1.941}, {'end': 6042.998, 'text': 'After that all the statements will be executed.', 'start': 6039.617, 'duration': 3.381}, {'end': 6046.94, 'text': 'So here sequence is again tuple list dictionary.', 'start': 6043.538, 'duration': 3.402}, {'end': 6048.86, 'text': 'And for while in sequence.', 'start': 6047.08, 'duration': 1.78}, {'end': 6050.141, 'text': 'So you will take a variable.', 'start': 6049.32, 'duration': 0.821}, {'end': 6053.362, 'text': 'And that variable will keep iterating in this sequence.', 'start': 6050.161, 'duration': 3.201}, {'end': 6054.362, 'text': 'If you write like.', 'start': 6053.482, 'duration': 0.88}, {'end': 6059.085, 'text': 'for i in tuple 1.', 'start': 6056.423, 'duration': 2.662}, {'end': 6063.267, 'text': 'So, i will keep iterating on the individual elements.', 'start': 6059.085, 'duration': 4.182}, {'end': 6068.55, 'text': "Let's see some examples so that you have more clarity.", 'start': 6063.327, 'duration': 5.223}, {'end': 6072.112, 'text': 'First of all, I will make a new list here.', 'start': 6068.57, 'duration': 3.542}, {'end': 6077.635, 'text': 'I will give the name of this list as l1 and I will add some fruits to it.', 'start': 6072.152, 'duration': 5.483}, {'end': 6081.017, 'text': 'Mango is done.', 'start': 6080.116, 'duration': 0.901}, {'end': 6085.079, 'text': 'After that, we have got apple.', 'start': 6083.478, 'duration': 1.601}, {'end': 6090.462, 'text': 'Grapes and orange.', 'start': 6086.878, 'duration': 3.584}, {'end': 6093.865, 'text': 'So we have made a list here.', 'start': 6092.003, 'duration': 1.862}, {'end': 6100.092, 'text': 'And now after making a list, I have to print each element individually in this list.', 'start': 6094.326, 'duration': 5.766}, {'end': 6102.234, 'text': 'So for this, I will use follow up.', 'start': 6100.152, 'duration': 2.082}, {'end': 6103.856, 'text': "So it's simple.", 'start': 6102.254, 'duration': 1.602}, {'end': 6109.962, 'text': 'For inl1 print of i.', 'start': 6104.116, 'duration': 5.846}, {'end': 6115.659, 'text': 'And with this command, we have printed all the individual elements.', 'start': 6111.497, 'duration': 4.162}, {'end': 6119.2, 'text': 'So i was initially mango.', 'start': 6115.679, 'duration': 3.521}, {'end': 6122.381, 'text': 'For i in L1, initially i value was mango.', 'start': 6119.48, 'duration': 2.901}, {'end': 6123.942, 'text': 'After that i value became apple.', 'start': 6122.401, 'duration': 1.541}, {'end': 6124.982, 'text': 'After that it became grapes.', 'start': 6123.962, 'duration': 1.02}, {'end': 6126.122, 'text': 'After that it became orange.', 'start': 6125.002, 'duration': 1.12}, {'end': 6128.983, 'text': 'And we are printing all these values individually here.', 'start': 6126.242, 'duration': 2.741}, {'end': 6133.443, 'text': "And now let's look at multiple for loops.", 'start': 6131.181, 'duration': 2.262}, {'end': 6135.945, 'text': 'What are multiple for loops? Basically, nested for loops.', 'start': 6133.463, 'duration': 2.482}, {'end': 6138.847, 'text': 'Meaning, in one for loop, another for loop.', 'start': 6135.985, 'duration': 2.862}, {'end': 6143.59, 'text': "It's quite interesting, isn't it? So, let's look at an example of this.", 'start': 6138.867, 'duration': 4.723}, {'end': 6145.192, 'text': "So, first of all, I'll make an L1 again.", 'start': 6143.611, 'duration': 1.581}, {'end': 6148.454, 'text': "And in this, I'll add some colors here.", 'start': 6145.212, 'duration': 3.242}, {'end': 6150.356, 'text': 'So, I have orange here.', 'start': 6148.474, 'duration': 1.882}, {'end': 6151.336, 'text': 'After orange, I have.', 'start': 6150.456, 'duration': 0.88}, {'end': 6161.463, 'text': 'black ho gaya hai, uske baad white ho gaya hai.', 'start': 6157.779, 'duration': 3.684}, {'end': 6170.171, 'text': 'similarly, main dosra list bana deta ho aur dosre list mein main kuch items add kar, leta ho jaise, first item ho gaya hai mera chair,', 'start': 6161.463, 'duration': 8.708}, {'end': 6175.636, 'text': 'dosra item ho gaya hai book aur third item ho gaya hai laptop.', 'start': 6170.171, 'duration': 5.465}, {'end': 6180.202, 'text': 'So these two items are ready for me.', 'start': 6177.861, 'duration': 2.341}, {'end': 6185.245, 'text': 'Now, what I have to print is, I have to repeat both of them.', 'start': 6180.222, 'duration': 5.023}, {'end': 6190.107, 'text': 'First, I have to print orange chair, orange book, orange laptop.', 'start': 6185.285, 'duration': 4.822}, {'end': 6194.269, 'text': 'After that, I have to print black chair, black book, black laptop.', 'start': 6190.307, 'duration': 3.962}, {'end': 6198.311, 'text': 'Similarly, I have to print white chair, white book, and white laptop.', 'start': 6194.609, 'duration': 3.702}, {'end': 6203.052, 'text': 'So to do this, I have to make an outer for loop.', 'start': 6199.031, 'duration': 4.021}, {'end': 6215.576, 'text': 'So for i in l1, similarly for j in l2, I have to print off i, j.', 'start': 6203.192, 'duration': 12.384}, {'end': 6220.017, 'text': 'So as you can see, this is my final result.', 'start': 6215.576, 'duration': 4.441}, {'end': 6221.878, 'text': 'So this is the outer loop.', 'start': 6220.037, 'duration': 1.841}, {'end': 6225.731, 'text': 'In the outer loop, initially, the value of i was orange.', 'start': 6222.688, 'duration': 3.043}, {'end': 6229.894, 'text': 'So, we entered inside and then the initial value of j was chair.', 'start': 6226.151, 'duration': 3.743}, {'end': 6231.916, 'text': 'So, we printed orange chair.', 'start': 6230.334, 'duration': 1.582}, {'end': 6235.119, 'text': 'Then j was incremented and the value of j became book.', 'start': 6232.316, 'duration': 2.803}, {'end': 6236.46, 'text': 'So, we printed orange book.', 'start': 6235.139, 'duration': 1.321}, {'end': 6241.384, 'text': 'Again, j was incremented and the value of j became laptop and we printed orange laptop.', 'start': 6237, 'duration': 4.384}, {'end': 6243.904, 'text': 'So this first iteration is finished.', 'start': 6241.804, 'duration': 2.1}], 'summary': 'Demonstrates while and for loops using examples and explanations.', 'duration': 368.501, 'max_score': 5875.403, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts5875403.jpg'}, {'end': 6039.217, 'src': 'embed', 'start': 6011.598, 'weight': 1, 'content': [{'end': 6014.18, 'text': "So now let's see what is for loop.", 'start': 6011.598, 'duration': 2.582}, {'end': 6018.343, 'text': 'So for loop we can iterate on any sequence.', 'start': 6014.72, 'duration': 3.623}, {'end': 6023.146, 'text': 'And what is sequence? The data structures we saw are all sequences.', 'start': 6018.623, 'duration': 4.523}, {'end': 6027.35, 'text': 'So tuple, list, dictionary, you can even take string, these are all sequences.', 'start': 6023.467, 'duration': 3.883}, {'end': 6031.433, 'text': 'So if you want to iterate on any sequence of elements, then you can see for loop.', 'start': 6027.37, 'duration': 4.063}, {'end': 6037.136, 'text': 'And this is the syntax of for loop.', 'start': 6035.195, 'duration': 1.941}, {'end': 6039.217, 'text': 'For while in sequence.', 'start': 6037.276, 'duration': 1.941}], 'summary': 'For loop iterates over any sequence of elements.', 'duration': 27.619, 'max_score': 6011.598, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts6011598.jpg'}, {'end': 6320.529, 'src': 'embed', 'start': 6296.932, 'weight': 2, 'content': [{'end': 6304.657, 'text': 'For example, while you are eating, you are eating with a fork or spoon and your hand is shaking and you are chewing food from your mouth.', 'start': 6296.932, 'duration': 7.725}, {'end': 6308.299, 'text': 'So you are doing multiple tasks at the same time.', 'start': 6304.677, 'duration': 3.622}, {'end': 6309.059, 'text': 'This is called function.', 'start': 6308.339, 'duration': 0.72}, {'end': 6310.56, 'text': 'Then running.', 'start': 6310.12, 'duration': 0.44}, {'end': 6312.462, 'text': 'In running, you run.', 'start': 6310.64, 'duration': 1.822}, {'end': 6315.685, 'text': 'Both your legs move at the same time.', 'start': 6312.682, 'duration': 3.003}, {'end': 6317.807, 'text': 'You are breathing and your hands are moving.', 'start': 6315.705, 'duration': 2.102}, {'end': 6318.327, 'text': 'This is running.', 'start': 6317.827, 'duration': 0.5}, {'end': 6320.529, 'text': 'Another task is cycling.', 'start': 6318.347, 'duration': 2.182}], 'summary': 'Performing multiple tasks simultaneously, such as eating with utensils or running, demonstrates function and coordination.', 'duration': 23.597, 'max_score': 6296.932, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts6296932.jpg'}, {'end': 6983.872, 'src': 'heatmap', 'start': 6605.371, 'weight': 0.716, 'content': [{'end': 6611.992, 'text': 'So again I will type def of odd, I have made it even here.', 'start': 6605.371, 'duration': 6.621}, {'end': 6614.972, 'text': 'Then here again it will take one parameter.', 'start': 6612.632, 'duration': 2.34}, {'end': 6623.187, 'text': 'After this I am looking at the condition, if x%2 is double equal to 0.', 'start': 6615.052, 'duration': 8.135}, {'end': 6627.629, 'text': "So whatever value I'm inserting, I'll divide it by 2.", 'start': 6623.187, 'duration': 4.442}, {'end': 6637.732, 'text': "And if the remainder turns out to be 0, then I'll have to print x is even.", 'start': 6627.629, 'duration': 10.103}, {'end': 6653.497, 'text': "And if it doesn't turn out to be 0 after dividing by 2, then I'll have to print x is odd.", 'start': 6639.633, 'duration': 13.864}, {'end': 6655.701, 'text': 'I have created a function here.', 'start': 6653.517, 'duration': 2.184}, {'end': 6658.265, 'text': 'After this, I will write odd even again.', 'start': 6655.781, 'duration': 2.484}, {'end': 6659.587, 'text': 'I am invoking the function here.', 'start': 6658.305, 'duration': 1.282}, {'end': 6665.447, 'text': 'I have to pass a value here, actually.', 'start': 6663.246, 'duration': 2.201}, {'end': 6666.828, 'text': "So, I'll pass it as phi.", 'start': 6665.687, 'duration': 1.141}, {'end': 6670.249, 'text': "As you can see, it's printing phi as odd.", 'start': 6666.928, 'duration': 3.321}, {'end': 6672.15, 'text': "Similarly, I'll pass an even number.", 'start': 6670.809, 'duration': 1.341}, {'end': 6673.55, 'text': "Let's pass 10 and see.", 'start': 6672.17, 'duration': 1.38}, {'end': 6674.631, 'text': 'You can see, 10 is even.', 'start': 6673.57, 'duration': 1.061}, {'end': 6677.672, 'text': 'So, these are the basic functions.', 'start': 6674.651, 'duration': 3.021}, {'end': 6683.054, 'text': "So, in Python, there's a special type of function which you call lambda function.", 'start': 6677.692, 'duration': 5.362}, {'end': 6685.496, 'text': 'Lambda function is also called anonymous function.', 'start': 6683.615, 'duration': 1.881}, {'end': 6690.857, 'text': "It's called anonymous function because it doesn't have a name.", 'start': 6686.716, 'duration': 4.141}, {'end': 6692.897, 'text': "So you don't define it.", 'start': 6690.877, 'duration': 2.02}, {'end': 6698.939, 'text': 'You just give the parameters of the function in one line and give the code of the function, the expression.', 'start': 6693.238, 'duration': 5.701}, {'end': 6700.499, 'text': "It doesn't have a name.", 'start': 6699.019, 'duration': 1.48}, {'end': 6702.24, 'text': "Let's see a basic example.", 'start': 6700.519, 'duration': 1.721}, {'end': 6711.622, 'text': 'So first of all, you start with the keyword Lambda.', 'start': 6702.34, 'duration': 9.282}, {'end': 6715.566, 'text': 'As you can see, the keyword has been converted to green.', 'start': 6712.645, 'duration': 2.921}, {'end': 6717.467, 'text': 'Now, you give the parameter.', 'start': 6715.927, 'duration': 1.54}, {'end': 6718.948, 'text': 'This parameter is x.', 'start': 6717.988, 'duration': 0.96}, {'end': 6723.51, 'text': 'Then you give a colon and type the expression x into x into x.', 'start': 6718.948, 'duration': 4.562}, {'end': 6724.351, 'text': 'I write x again and again.', 'start': 6723.51, 'duration': 0.841}, {'end': 6735.304, 'text': 'So I store this in a variable and write the name of that variable as g.', 'start': 6731.601, 'duration': 3.703}, {'end': 6740.967, 'text': "So for now I am storing this in g but normally we don't need to define it.", 'start': 6735.304, 'duration': 5.663}, {'end': 6744.57, 'text': "So g of, let's say I pass 7.", 'start': 6741.027, 'duration': 3.543}, {'end': 6747.532, 'text': 'So as you can see 7 cubed is 343.', 'start': 6744.57, 'duration': 2.962}, {'end': 6752.035, 'text': 'So this is the parameter and it is multiplying the parameter 3 times.', 'start': 6747.532, 'duration': 4.503}, {'end': 6758.879, 'text': 'So instead of 7, if I pass 5, you can see 5 x 5 x 5 is 125.', 'start': 6753.536, 'duration': 5.343}, {'end': 6763.923, 'text': 'Similarly, if I pass 10, you can see it will give 1000.', 'start': 6758.879, 'duration': 5.044}, {'end': 6767.265, 'text': 'So normally lambda function is used with some other functions.', 'start': 6763.923, 'duration': 3.342}, {'end': 6772.488, 'text': 'And those functions are called filter, map and reduce functions.', 'start': 6767.445, 'duration': 5.043}, {'end': 6775.85, 'text': 'So I will show you an example of lambda function with those three.', 'start': 6772.508, 'duration': 3.342}, {'end': 6779.193, 'text': 'So I will write a comment.', 'start': 6775.89, 'duration': 3.303}, {'end': 6781.174, 'text': 'Lambda with.', 'start': 6780.053, 'duration': 1.121}, {'end': 6785.282, 'text': 'So is it a filter function?', 'start': 6783.081, 'duration': 2.201}, {'end': 6789.885, 'text': "Suppose you have a sequence, whether it's a tuple, a list or a dictionary,", 'start': 6785.302, 'duration': 4.583}, {'end': 6797.028, 'text': 'and you have to filter some values from that sequence on the basis of a condition.', 'start': 6789.885, 'duration': 7.143}, {'end': 6801.811, 'text': 'then you can use the filter method in conjunction with the lambda function.', 'start': 6797.028, 'duration': 4.783}, {'end': 6807.574, 'text': 'So, suppose I have made a list here and I will randomly give 10 values to it.', 'start': 6801.831, 'duration': 5.743}, {'end': 6818.872, 'text': 'So here I have given some values.', 'start': 6817.611, 'duration': 1.261}, {'end': 6824.455, 'text': 'So after giving values, first of all I will write filter.', 'start': 6818.892, 'duration': 5.563}, {'end': 6827.076, 'text': 'So you are seeing again that it has converted to green.', 'start': 6824.635, 'duration': 2.441}, {'end': 6828.797, 'text': 'And it takes two parameters.', 'start': 6827.657, 'duration': 1.14}, {'end': 6833.12, 'text': 'The first parameter is your lambda function and the second parameter is your list.', 'start': 6828.957, 'duration': 4.163}, {'end': 6835.561, 'text': 'So I will give the second parameter here, L1.', 'start': 6833.14, 'duration': 2.421}, {'end': 6839.183, 'text': 'What is the first parameter? Lambda function.', 'start': 6835.621, 'duration': 3.562}, {'end': 6846.885, 'text': 'So here I will I will write lambda after this because it takes parameter first and then expression.', 'start': 6839.263, 'duration': 7.622}, {'end': 6855.47, 'text': 'So here I will write parameter, parameter is x then I will write colon then I will give condition here.', 'start': 6846.905, 'duration': 8.565}, {'end': 6863.234, 'text': 'Condition is x%2 is not equal to 0.', 'start': 6855.55, 'duration': 7.684}, {'end': 6873.696, 'text': 'So in this list, whatever value is not given as 0 after dividing by 2, filter out all those values and store them in someone.', 'start': 6863.234, 'duration': 10.462}, {'end': 6877.484, 'text': 'I have to convert all the results into a list.', 'start': 6875.103, 'duration': 2.381}, {'end': 6880.906, 'text': 'I am storing them in a list.', 'start': 6877.604, 'duration': 3.302}, {'end': 6882.186, 'text': 'I am repeating again.', 'start': 6881.346, 'duration': 0.84}, {'end': 6884.307, 'text': 'The filter is taking two parameters.', 'start': 6882.206, 'duration': 2.101}, {'end': 6888.089, 'text': 'The first parameter is the function and the second parameter is the list.', 'start': 6884.367, 'duration': 3.722}, {'end': 6891.611, 'text': 'This is the list and all the odd values in this list.', 'start': 6888.609, 'duration': 3.002}, {'end': 6898.954, 'text': 'How will we find the odd values? I will divide all these individual elements by 2.', 'start': 6891.751, 'duration': 7.203}, {'end': 6900.035, 'text': "So that's what I'm doing here.", 'start': 6898.954, 'duration': 1.081}, {'end': 6901.716, 'text': 'Individual elements is x here.', 'start': 6900.115, 'duration': 1.601}, {'end': 6903.576, 'text': "I'm dividing individual elements by 2.", 'start': 6901.736, 'duration': 1.84}, {'end': 6907.458, 'text': "And after dividing by 2, if it doesn't get 0, it means they are all odd elements.", 'start': 6903.576, 'duration': 3.882}, {'end': 6908.699, 'text': 'So I got all those results.', 'start': 6907.559, 'duration': 1.14}, {'end': 6910.68, 'text': "And I've converted that result into a list.", 'start': 6908.879, 'duration': 1.801}, {'end': 6912.981, 'text': "And I'll store it in a new list and name it FinalList.", 'start': 6910.72, 'duration': 2.261}, {'end': 6916.663, 'text': "So I've done that and I'll print FinalList here.", 'start': 6913.021, 'duration': 3.642}, {'end': 6933.82, 'text': 'So, as you can see, I have filtered out all the even values and now I have all the odd values.', 'start': 6927.196, 'duration': 6.624}, {'end': 6936.782, 'text': 'So, we can use any filter function like this.', 'start': 6933.84, 'duration': 2.942}, {'end': 6938.983, 'text': 'So, these are all odd values.', 'start': 6936.842, 'duration': 2.141}, {'end': 6944.827, 'text': 'If I want even values instead of odd values, then just write double equal to here.', 'start': 6939.083, 'duration': 5.744}, {'end': 6946.988, 'text': 'This is done.', 'start': 6946.348, 'duration': 0.64}, {'end': 6948.249, 'text': 'Now I will print the final list.', 'start': 6947.008, 'duration': 1.241}, {'end': 6952.37, 'text': 'So now you can see that instead of odd, I have all the even values.', 'start': 6948.309, 'duration': 4.061}, {'end': 6954.43, 'text': 'So this was the filter function with lambda.', 'start': 6952.39, 'duration': 2.04}, {'end': 6959.971, 'text': "So now let's see how we can use the lambda function with the map function.", 'start': 6954.45, 'duration': 5.521}, {'end': 6964.073, 'text': 'Lambda with map.', 'start': 6962.632, 'duration': 1.441}, {'end': 6966.113, 'text': 'So again I make a list here.', 'start': 6964.873, 'duration': 1.24}, {'end': 6970.414, 'text': 'Here I come with simple values.', 'start': 6966.173, 'duration': 4.241}, {'end': 6978.006, 'text': 'So from 1 to here, I will store all the values up to 8 in L1.', 'start': 6970.434, 'duration': 7.572}, {'end': 6983.872, 'text': 'After this, my task is to multiply all the individual elements by 2.', 'start': 6978.026, 'duration': 5.846}], 'summary': 'Demonstrates creating and using lambda functions with examples of filtering and mapping in python.', 'duration': 378.501, 'max_score': 6605.371, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts6605371.jpg'}, {'end': 6964.073, 'src': 'embed', 'start': 6933.84, 'weight': 4, 'content': [{'end': 6936.782, 'text': 'So, we can use any filter function like this.', 'start': 6933.84, 'duration': 2.942}, {'end': 6938.983, 'text': 'So, these are all odd values.', 'start': 6936.842, 'duration': 2.141}, {'end': 6944.827, 'text': 'If I want even values instead of odd values, then just write double equal to here.', 'start': 6939.083, 'duration': 5.744}, {'end': 6946.988, 'text': 'This is done.', 'start': 6946.348, 'duration': 0.64}, {'end': 6948.249, 'text': 'Now I will print the final list.', 'start': 6947.008, 'duration': 1.241}, {'end': 6952.37, 'text': 'So now you can see that instead of odd, I have all the even values.', 'start': 6948.309, 'duration': 4.061}, {'end': 6954.43, 'text': 'So this was the filter function with lambda.', 'start': 6952.39, 'duration': 2.04}, {'end': 6959.971, 'text': "So now let's see how we can use the lambda function with the map function.", 'start': 6954.45, 'duration': 5.521}, {'end': 6964.073, 'text': 'Lambda with map.', 'start': 6962.632, 'duration': 1.441}], 'summary': 'Demonstrated filtering and mapping using lambda functions.', 'duration': 30.233, 'max_score': 6933.84, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts6933840.jpg'}], 'start': 4807.947, 'title': 'Python programming concepts', 'summary': 'Covers python if-else statements, conditions, looping, while loops, for loops, and functions, demonstrating practical examples and emphasizing the importance of these concepts in programming.', 'chapters': [{'end': 5231.794, 'start': 4807.947, 'title': 'Python if-else statements', 'summary': 'Covers the concept of decision-making statements in python, including examples and pseudo code, with practical demonstrations of if, if-else, and if-elif-else statements, highlighting the importance of indentation and logical operators.', 'duration': 423.847, 'highlights': ['The chapter covers the concept of decision-making statements in Python', 'Examples of if, if-else, and if-elif-else statements are provided', 'Importance of indentation and logical operators is emphasized']}, {'end': 5530.079, 'start': 5232.134, 'title': 'Python conditions & looping examples', 'summary': 'Discusses the usage of if-else statements with tuple, list, and dictionary, demonstrating their application with examples and output results, followed by an introduction to looping statements.', 'duration': 297.945, 'highlights': ['Demonstrating if-else statement with dictionary', 'Applying if-else statement with list', 'Utilizing if-else statement with tuple', 'Introduction to looping statements']}, {'end': 6011.278, 'start': 5533.223, 'title': 'Looping statements and while loop examples', 'summary': 'Discusses the concept of looping statements, emphasizing the while loop, with examples of filling a bucket, repeating a song, and earning a salary, along with detailed examples of using the while loop to print numbers and create a 2 table, as well as modifying a list using a while loop.', 'duration': 478.055, 'highlights': ['The chapter discusses the concept of looping statements, emphasizing the while loop, with examples of filling a bucket, repeating a song, and earning a salary.', 'Detailed examples of using the while loop to print numbers and create a 2 table, as well as modifying a list using a while loop.']}, {'end': 6270.533, 'start': 6011.598, 'title': 'For loops in python', 'summary': 'Explains the concept of for loops in python, including iterating through sequences like tuple, list, and dictionary, and demonstrates the use of multiple (nested) for loops with examples.', 'duration': 258.935, 'highlights': ['The chapter explains the concept of for loops in Python, including iterating through sequences like tuple, list, and dictionary.', 'It provides examples of using for loops to iterate through sequences and print individual elements.', 'The chapter demonstrates the use of multiple (nested) for loops with examples.']}, {'end': 6758.879, 'start': 6270.894, 'title': 'Understanding functions in programming', 'summary': 'Explains the concept of functions in programming by drawing parallels with real-life tasks, such as eating, running, and cycling, emphasizing the need for functions to handle multiple tasks, showcasing examples of function definition, invocation, and lambda functions in python.', 'duration': 487.985, 'highlights': ['Functions in programming are analogous to real-life tasks like eating, running, and cycling, which involve multiple actions, emphasizing the need for functions to handle various tasks simultaneously.', 'Function is a block of code that performs a specific task, enabling the execution of multiple lines of code by simply calling the function, reducing redundancy and simplifying complex tasks, demonstrated through examples of deposit, withdraw, and balance functions in programming.', "The chapter provides examples and syntax for defining, invoking, and using functions with and without parameters, showcasing a basic function 'hello' and functions performing arithmetic operations and checking for odd or even numbers.", "The concept of lambda function in Python is introduced as an anonymous function, demonstrated through a basic example with the keyword 'lambda', showcasing parameter usage and expression for multiplying a number three times."]}, {'end': 7154.056, 'start': 6758.879, 'title': 'Lambda functions and functional programming', 'summary': 'Demonstrates the use of lambda functions with filter, map, and reduce functions, showcasing examples of filtering odd and even values, mapping elements to their doubles, and reducing a list to a single value.', 'duration': 395.177, 'highlights': ['The filter function with lambda is used to filter out odd or even values from a list, demonstrated by filtering odd and even values from a given list and storing the results in new lists, resulting in 5 odd values and 4 even values.', 'The map function with lambda is utilized to multiply individual elements of a list by 2, illustrated by mapping the task of multiplying each element by 2 and storing the results in a new list, resulting in the values being doubled from 2 to 16.', 'The reduce function with lambda is employed to produce a consolidated result from a sequence, exemplified by adding all the values in a list and obtaining the final result of 36.']}], 'duration': 2346.109, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts4807947.jpg', 'highlights': ['The chapter covers the concept of decision-making statements in Python', 'The chapter explains the concept of for loops in Python, including iterating through sequences like tuple, list, and dictionary', 'Functions in programming are analogous to real-life tasks like eating, running, and cycling, which involve multiple actions', 'The chapter discusses the concept of looping statements, emphasizing the while loop, with examples of filling a bucket, repeating a song, and earning a salary', 'The filter function with lambda is used to filter out odd or even values from a list, demonstrated by filtering odd and even values from a given list and storing the results in new lists, resulting in 5 odd values and 4 even values']}, {'end': 9256.087, 'segs': [{'end': 7256.366, 'src': 'embed', 'start': 7227.129, 'weight': 1, 'content': [{'end': 7229.911, 'text': 'We have understood what objects are.', 'start': 7227.129, 'duration': 2.782}, {'end': 7234.573, 'text': "So now let's understand what classes are with respect to the programming world.", 'start': 7229.931, 'duration': 4.642}, {'end': 7239.897, 'text': 'So class is actually a template or a blueprint for real world entities.', 'start': 7235.114, 'duration': 4.783}, {'end': 7243.018, 'text': 'So, what is a real world entity? These are all objects.', 'start': 7240.777, 'duration': 2.241}, {'end': 7246.881, 'text': "So, let's take a real world entity like a phone.", 'start': 7243.038, 'duration': 3.843}, {'end': 7250.723, 'text': 'So, a phone is considered to be a real world entity.', 'start': 7246.901, 'duration': 3.822}, {'end': 7256.366, 'text': "So, the real world entity's blueprint is what we call a class.", 'start': 7251.163, 'duration': 5.203}], 'summary': 'A class is a blueprint for real world entities, like a phone, in programming.', 'duration': 29.237, 'max_score': 7227.129, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts7227129.jpg'}, {'end': 7381.187, 'src': 'embed', 'start': 7355.551, 'weight': 2, 'content': [{'end': 7364.137, 'text': 'So what does this mean? This means that when you make a specific object related to a general template, it is called an object.', 'start': 7355.551, 'duration': 8.586}, {'end': 7366.158, 'text': 'So what is this? This is a class.', 'start': 7364.157, 'duration': 2.001}, {'end': 7369, 'text': 'our phone is here.', 'start': 7367.739, 'duration': 1.261}, {'end': 7376.444, 'text': 'So when you take any specific instances of that phone, like Apple, Apple is a specific instance of a phone.', 'start': 7369.42, 'duration': 7.024}, {'end': 7378.965, 'text': 'Motorola is a specific instance of a phone.', 'start': 7376.864, 'duration': 2.101}, {'end': 7381.187, 'text': 'Samsung is a specific instance of a phone.', 'start': 7379.326, 'duration': 1.861}], 'summary': 'Creating objects from general templates - apple, motorola, and samsung as specific instances of phones.', 'duration': 25.636, 'max_score': 7355.551, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts7355551.jpg'}, {'end': 7461.392, 'src': 'embed', 'start': 7428.838, 'weight': 0, 'content': [{'end': 7433.24, 'text': 'And what is a class? A class is a basic template of these real-world entities.', 'start': 7428.838, 'duration': 4.402}, {'end': 7440.364, 'text': 'And when you take this template, a blueprint, and make a specific instance of it, you get an object.', 'start': 7433.381, 'duration': 6.983}, {'end': 7444.753, 'text': "So, let's see how to implement object-oriented programming in Python.", 'start': 7441.889, 'duration': 2.864}, {'end': 7446.876, 'text': 'Our first task is to implement a class in Python.', 'start': 7444.773, 'duration': 2.103}, {'end': 7452.743, 'text': "So, we'll make a class, first class, right? And the name of that class will be phone.", 'start': 7446.896, 'duration': 5.847}, {'end': 7461.392, 'text': 'To create a class, we have to use the class keyword in Python.', 'start': 7457.009, 'duration': 4.383}], 'summary': 'Introduction to class and object in python for object-oriented programming.', 'duration': 32.554, 'max_score': 7428.838, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts7428838.jpg'}, {'end': 7735.661, 'src': 'embed', 'start': 7707.309, 'weight': 5, 'content': [{'end': 7715.031, 'text': "Now let's see how we can add any other parameters other than self in the inbuilt methods of a class.", 'start': 7707.309, 'duration': 7.722}, {'end': 7719.189, 'text': 'So here we are adding four new methods.', 'start': 7715.967, 'duration': 3.222}, {'end': 7722.272, 'text': 'SetColor, SetCost, ShowColor, ShowCost.', 'start': 7719.59, 'duration': 2.682}, {'end': 7726.215, 'text': 'So we had seen that the phone has color right?', 'start': 7722.912, 'duration': 3.303}, {'end': 7733.52, 'text': 'So we are defining the phone here and we are assuming that this phone will have some color and some cost.', 'start': 7726.275, 'duration': 7.245}, {'end': 7735.661, 'text': 'So we have to set some color.', 'start': 7733.62, 'duration': 2.041}], 'summary': 'Adding four new methods: setcolor, setcost, showcolor, showcost.', 'duration': 28.352, 'max_score': 7707.309, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts7707309.jpg'}, {'end': 8102.495, 'src': 'embed', 'start': 8049.004, 'weight': 3, 'content': [{'end': 8052.326, 'text': 'you can assign all the values at the time of creation.', 'start': 8049.004, 'duration': 3.322}, {'end': 8059.973, 'text': 'And in Python, you define the constructor with the init method.', 'start': 8055.407, 'duration': 4.566}, {'end': 8063.958, 'text': 'So def, double underscore, init, again double underscore.', 'start': 8060.213, 'duration': 3.745}, {'end': 8067.322, 'text': 'So the class name is employee, you have created the method.', 'start': 8064.078, 'duration': 3.244}, {'end': 8071.187, 'text': 'So the class name is employee and def init, this is the constructor.', 'start': 8067.342, 'duration': 3.845}, {'end': 8072.829, 'text': 'And it is taking all these parameters.', 'start': 8071.267, 'duration': 1.562}, {'end': 8083.177, 'text': "Initially, we saw that in the previous example, to assign color or cost, we had made two separate methods, but that won't be needed.", 'start': 8073.81, 'duration': 9.367}, {'end': 8088.281, 'text': 'If we create just one constructor with the help of this init method,', 'start': 8083.257, 'duration': 5.024}, {'end': 8094.526, 'text': 'then we can assign all these elements or attributes at the time of object creation.', 'start': 8088.281, 'duration': 6.245}, {'end': 8102.495, 'text': 'For example, the employee will have a name, age, salary, and gender.', 'start': 8097.008, 'duration': 5.487}], 'summary': 'In python, using the init method allows assigning all employee attributes at object creation.', 'duration': 53.491, 'max_score': 8049.004, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts8049004.jpg'}, {'end': 8371.317, 'src': 'embed', 'start': 8341.957, 'weight': 7, 'content': [{'end': 8346.341, 'text': 'So, I have invoked the method e1.showEmployeeDetails.', 'start': 8341.957, 'duration': 4.384}, {'end': 8351.103, 'text': 'And we are printing all these employee details here.', 'start': 8347.04, 'duration': 4.063}, {'end': 8353.286, 'text': 'So, name of employee is Ram.', 'start': 8351.865, 'duration': 1.421}, {'end': 8355.267, 'text': 'Age of employee is 32.', 'start': 8353.825, 'duration': 1.442}, {'end': 8356.808, 'text': 'Salary of employee is 50, 000.', 'start': 8355.267, 'duration': 1.541}, {'end': 8359.01, 'text': 'And gender of employee is male.', 'start': 8356.808, 'duration': 2.202}, {'end': 8363.933, 'text': 'So, like this, we can use a constructor to pass all values during object creation.', 'start': 8359.03, 'duration': 4.903}, {'end': 8371.317, 'text': 'So, these were some basic concepts in object-oriented programming.', 'start': 8367.816, 'duration': 3.501}], 'summary': 'Printed employee details: name: ram, age: 32, salary: 50,000, gender: male.', 'duration': 29.36, 'max_score': 8341.957, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts8341957.jpg'}, {'end': 8458.261, 'src': 'embed', 'start': 8426.415, 'weight': 4, 'content': [{'end': 8428.717, 'text': 'So, these are all inheritances.', 'start': 8426.415, 'duration': 2.302}, {'end': 8436.462, 'text': 'So, whatever features are there, a class that is above, inherits the lower class from the upper class.', 'start': 8429.037, 'duration': 7.425}, {'end': 8440.245, 'text': 'You can put this concept in Python as well.', 'start': 8438.183, 'duration': 2.062}, {'end': 8444.128, 'text': 'So, you have a superclass and a subclass.', 'start': 8440.285, 'duration': 3.843}, {'end': 8448.913, 'text': 'So, all the properties in the superclass inherit the properties of the superclass.', 'start': 8444.148, 'duration': 4.765}, {'end': 8451.315, 'text': "Let's see an example here.", 'start': 8448.993, 'duration': 2.322}, {'end': 8458.261, 'text': 'So, we have a class here named Vehicle.', 'start': 8454.978, 'duration': 3.283}], 'summary': 'Inheritance in python allows a subclass to inherit properties from a superclass.', 'duration': 31.846, 'max_score': 8426.415, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts8426415.jpg'}, {'end': 8590.014, 'src': 'embed', 'start': 8561.361, 'weight': 8, 'content': [{'end': 8566.925, 'text': "that's why you are able to invoke the showDetails method with the help of this car class.", 'start': 8561.361, 'duration': 5.564}, {'end': 8570.943, 'text': 'So you have printed all the details here.', 'start': 8567.881, 'duration': 3.062}, {'end': 8572.864, 'text': 'Then you invoked the parent method.', 'start': 8571.143, 'duration': 1.721}, {'end': 8576.706, 'text': 'Similarly, you are printing the child class method, show car.', 'start': 8572.884, 'duration': 3.822}, {'end': 8585.811, 'text': 'It may seem a little confusing again, so let me implement the entire Python code again.', 'start': 8577.366, 'duration': 8.445}, {'end': 8588.653, 'text': 'You will understand it well.', 'start': 8585.831, 'duration': 2.822}, {'end': 8590.014, 'text': 'I will delete all this here.', 'start': 8588.713, 'duration': 1.301}], 'summary': 'Demonstrating method invocation in a car class using python.', 'duration': 28.653, 'max_score': 8561.361, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts8561361.jpg'}, {'end': 8934.831, 'src': 'embed', 'start': 8906.939, 'weight': 9, 'content': [{'end': 8912.141, 'text': 'So in this way, we can apply basic inheritance in Python.', 'start': 8906.939, 'duration': 5.202}, {'end': 8917.203, 'text': "So now let's see how to overwrite the init method.", 'start': 8914.002, 'duration': 3.201}, {'end': 8921.825, 'text': 'So this is the same example as the vehicle class and the car class.', 'start': 8917.243, 'duration': 4.582}, {'end': 8928.348, 'text': 'So now we are creating another constructor inside the child class.', 'start': 8921.845, 'duration': 6.503}, {'end': 8934.831, 'text': 'So as we saw in the previous example, this is our child class, but there was no constructor inside it.', 'start': 8928.368, 'duration': 6.463}], 'summary': 'Applying basic inheritance in python, overwriting the init method and creating a constructor inside the child class.', 'duration': 27.892, 'max_score': 8906.939, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts8906939.jpg'}], 'start': 7154.357, 'title': 'Python object-oriented programming', 'summary': 'Covers python object-oriented programming, including classes, objects, inheritance, and constructors, with examples demonstrating their implementation in python, such as a phone class and an employee class, to represent real-world entities and their properties and behaviors.', 'chapters': [{'end': 7407.704, 'start': 7154.357, 'title': 'Python object-oriented programming', 'summary': 'Explains the concept of object-oriented programming in python, including the use of classes and objects to represent real-world entities and their properties and behaviors, with examples showing how objects are specific instances of classes.', 'duration': 253.347, 'highlights': ['Objects are specific instances of a class', 'Classes as blueprints for real-world entities', 'Introduction to Object-Oriented Programming in Python']}, {'end': 8049.004, 'start': 7408.345, 'title': 'Object-oriented programming in python', 'summary': 'Explains the concept of object-oriented programming, with a focus on implementing classes, methods, and object instantiation in python, using a phone class as an example, and demonstrates how to add additional parameters such as color and cost to the object.', 'duration': 640.659, 'highlights': ['The chapter explains the concept of object-oriented programming and the implementation of classes, methods, and object instantiation in Python.', 'Demonstrates the process of adding additional parameters such as color and cost to the object.', 'Defines the methods make call and play game, and how to invoke them for the object.']}, {'end': 8371.317, 'start': 8049.004, 'title': 'Python constructor and object creation', 'summary': 'Discusses the use of a constructor in python to assign all values at the time of object creation, exemplified by creating an employee class with a constructor to initialize and print employee details.', 'duration': 322.313, 'highlights': ['The chapter explains the use of a constructor in Python, specifically the init method, to assign all attributes at the time of object creation, enhancing the process of initializing objects.', 'The example demonstrates creating an employee class with a constructor to initialize attributes such as name, age, salary, and gender at the time of object creation, streamlining the process of object instantiation and attribute assignment.', 'The concept of encapsulating methods within a class is illustrated, with the showEmployeeDetails method printing out the individual employee details such as name, age, salary, and gender, showcasing the encapsulation of functionality within a class.', 'The chapter emphasizes the simplification of object instantiation and attribute assignment using the constructor, followed by an illustration of creating an object and invoking the showEmployeeDetails method to print the assigned employee details.']}, {'end': 9256.087, 'start': 8371.699, 'title': 'Understanding inheritance in python', 'summary': "Explains the concept of inheritance in object-oriented programming, using a real-world analogy and a python code example to demonstrate how a child class inherits properties and methods from a parent class, as well as how to override the parent class's init method.", 'duration': 884.388, 'highlights': ['Inheritance analogy using genetic and financial features', 'Demonstration of inheritance in Python with superclass and subclass', 'Explanation of initiating superclass and invoking parent and child class methods', 'Demonstration of overwriting the init method in the child class']}], 'duration': 2101.73, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts7154357.jpg', 'highlights': ['Introduction to Object-Oriented Programming in Python', 'Classes as blueprints for real-world entities', 'Objects are specific instances of a class', 'The chapter explains the use of a constructor in Python, specifically the init method, to assign all attributes at the time of object creation, enhancing the process of initializing objects', 'Demonstration of inheritance in Python with superclass and subclass', 'Demonstrates the process of adding additional parameters such as color and cost to the object', 'The example demonstrates creating an employee class with a constructor to initialize attributes such as name, age, salary, and gender at the time of object creation, streamlining the process of object instantiation and attribute assignment', 'The concept of encapsulating methods within a class is illustrated, with the showEmployeeDetails method printing out the individual employee details such as name, age, salary, and gender, showcasing the encapsulation of functionality within a class', 'Explanation of initiating superclass and invoking parent and child class methods', 'Demonstration of overwriting the init method in the child class']}, {'end': 10196.755, 'segs': [{'end': 9307.785, 'src': 'embed', 'start': 9278.325, 'weight': 0, 'content': [{'end': 9285.332, 'text': 'So we have successfully created a child class where we are overwriting the init method of the parent class.', 'start': 9278.325, 'duration': 7.007}, {'end': 9291.856, 'text': "So, I'm invoking this method of parent class with the object of parent class.", 'start': 9285.993, 'duration': 5.863}, {'end': 9295.338, 'text': "Here, I'll print c1.showCarDetails.", 'start': 9292.357, 'duration': 2.981}, {'end': 9298.04, 'text': "And it's printed.", 'start': 9295.739, 'duration': 2.301}, {'end': 9300.401, 'text': 'Number of tires in car are 8.', 'start': 9298.2, 'duration': 2.201}, {'end': 9303.103, 'text': "Actually, we've printed the child class method.", 'start': 9300.401, 'duration': 2.702}, {'end': 9304.944, 'text': 'Number of tires is 8.', 'start': 9303.603, 'duration': 1.341}, {'end': 9305.904, 'text': 'Horsepower is 999.', 'start': 9304.944, 'duration': 0.96}, {'end': 9307.785, 'text': "And I'm a car is printed.", 'start': 9305.904, 'duration': 1.881}], 'summary': 'Created child class with 8 tires, 999 horsepower, and printed car details.', 'duration': 29.46, 'max_score': 9278.325, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts9278325.jpg'}, {'end': 9370.39, 'src': 'embed', 'start': 9329.316, 'weight': 1, 'content': [{'end': 9335.9, 'text': 'So in Python we have single inheritance, multiple inheritance, multi-level inheritance and hybrid inheritance.', 'start': 9329.316, 'duration': 6.584}, {'end': 9341.962, 'text': 'So till now we had seen single inheritance where one child class inherits from one super class.', 'start': 9336.3, 'duration': 5.662}, {'end': 9344.384, 'text': "So now let's understand the other three.", 'start': 9341.982, 'duration': 2.402}, {'end': 9347.785, 'text': 'So first of all we will start with multiple inheritance.', 'start': 9344.564, 'duration': 3.221}, {'end': 9355.787, 'text': 'So, as it is stated over here, in multiple inheritance, the child inherits from more than one parent class.', 'start': 9349.346, 'duration': 6.441}, {'end': 9358.108, 'text': "So, that's why it is called multiple inheritance.", 'start': 9355.807, 'duration': 2.301}, {'end': 9363.108, 'text': 'So, there is one child class which inherits from two parent classes.', 'start': 9358.148, 'duration': 4.96}, {'end': 9366.289, 'text': 'That means there is more than one parent class.', 'start': 9363.229, 'duration': 3.06}, {'end': 9370.39, 'text': 'So, it is inheriting these features from parent 1 and from parent 2.', 'start': 9366.629, 'duration': 3.761}], 'summary': 'Python supports single, multiple, multi-level, and hybrid inheritance with multiple inheritance allowing a child class to inherit from more than one parent class.', 'duration': 41.074, 'max_score': 9329.316, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts9329316.jpg'}, {'end': 9831.904, 'src': 'embed', 'start': 9783.958, 'weight': 2, 'content': [{'end': 9789.262, 'text': 'After that, my child dot show string three.', 'start': 9783.958, 'duration': 5.304}, {'end': 9794.227, 'text': 'And we have printed, I am string of child.', 'start': 9791.326, 'duration': 2.901}, {'end': 9796.488, 'text': 'So, we have seen the concept of multiple inheritance.', 'start': 9794.247, 'duration': 2.241}, {'end': 9800.689, 'text': 'We had initialized two parents, parent1 and parent2.', 'start': 9796.508, 'duration': 4.181}, {'end': 9806.771, 'text': 'After that, we created a child class, which was inheriting properties from parent1 and parent2.', 'start': 9800.749, 'duration': 6.022}, {'end': 9809.972, 'text': 'After that, we have invoked all the properties.', 'start': 9806.891, 'duration': 3.081}, {'end': 9812.253, 'text': 'After that, we have shown all the properties.', 'start': 9810.072, 'duration': 2.181}, {'end': 9815.314, 'text': 'So, we have covered multiple inheritance.', 'start': 9812.273, 'duration': 3.041}, {'end': 9817.535, 'text': "Now, let's see what is multi-level inheritance.", 'start': 9815.354, 'duration': 2.181}, {'end': 9823.779, 'text': 'So, as you can see, in multi-level inheritance, we have a parent-child-grandchild relationship.', 'start': 9818.635, 'duration': 5.144}, {'end': 9826.961, 'text': 'So, suppose this is our first class, the base class.', 'start': 9823.819, 'duration': 3.142}, {'end': 9829.282, 'text': 'So, this child class is deriving from the base class.', 'start': 9826.981, 'duration': 2.301}, {'end': 9831.904, 'text': 'So, the super class of the child is the parent.', 'start': 9829.322, 'duration': 2.582}], 'summary': 'Covered multiple and multi-level inheritance in python.', 'duration': 47.946, 'max_score': 9783.958, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts9783958.jpg'}, {'end': 10196.755, 'src': 'embed', 'start': 10170.273, 'weight': 6, 'content': [{'end': 10178.18, 'text': 'Then we have made an object of grandchild class and because grandchild class is inheriting from child class and parent class,', 'start': 10170.273, 'duration': 7.907}, {'end': 10181.223, 'text': 'it will also have getAge and getName methods.', 'start': 10178.18, 'duration': 3.043}, {'end': 10191.692, 'text': "That's why I am assigning name, age and gender to this object and after assigning these three, I am printing out name,", 'start': 10181.243, 'duration': 10.449}, {'end': 10194.034, 'text': 'age and gender again with the help of show methods.', 'start': 10191.692, 'duration': 2.342}, {'end': 10196.755, 'text': 'So, these were some of our inheritance examples.', 'start': 10194.534, 'duration': 2.221}], 'summary': 'Illustrated inheritance with grandchild class inheriting from child and parent classes, demonstrating methods for name, age, and gender.', 'duration': 26.482, 'max_score': 10170.273, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10170273.jpg'}], 'start': 9256.307, 'title': 'Python inheritance and multi-level inheritance', 'summary': 'Explores python inheritance, covering single and multiple inheritance, and delves into multi-level inheritance, demonstrating the creation of child classes that overwrite parent class methods, and the utilization of objects with methods to show name, age, and gender.', 'chapters': [{'end': 9370.39, 'start': 9256.307, 'title': 'Python inheritance concepts', 'summary': 'Demonstrates creating and invoking a child class that overwrites the parent class method, explaining single inheritance and delving into the concept of multiple inheritance in python, where a child class inherits from more than one parent class.', 'duration': 114.083, 'highlights': ["The chapter demonstrates creating and invoking a child class that overwrites the parent class method, showcasing the inheritance of the parent class's method with quantifiable data such as 'Number of tires in car are 8' and 'Horsepower is 999'.", 'It explains the concept of multiple inheritance in Python, highlighting that in multiple inheritance, the child inherits from more than one parent class, with emphasis on the fact that there is one child class which inherits from two parent classes.', 'It mentions the different types of inheritance in Python, including single inheritance, multiple inheritance, multi-level inheritance, and hybrid inheritance, providing an overview of the concepts and indicating the intention to delve into the other three types after discussing single inheritance.', 'The chapter highlights the demonstration of single inheritance, where one child class inherits from one super class, indicating a clear explanation of the concept before delving into the other types of inheritance in Python.']}, {'end': 9923.312, 'start': 9370.39, 'title': 'Multiple inheritance in python', 'summary': 'Covers the implementation of multiple inheritance and multi-level inheritance in python. it demonstrates the creation of parent classes, inheritance of properties into a child class, and the invocation of methods. it also explains the concept of multi-level inheritance with an example of parent-child-grandchild relationship.', 'duration': 552.922, 'highlights': ['The chapter demonstrates the creation of parent classes and the inheritance of properties into a child class, along with the invocation of methods.', 'The concept of multi-level inheritance is explained with an example of a parent-child-grandchild relationship.']}, {'end': 10196.755, 'start': 9923.332, 'title': 'Multi-level inheritance example', 'summary': 'Demonstrates the concept of multi-level inheritance with a parent class being inherited by a child class, and a grandchild class inheriting from the child class, resulting in the creation and utilization of objects with methods to show name, age, and gender.', 'duration': 273.423, 'highlights': ['An example of multi-level inheritance is demonstrated with a parent class being inherited by a child class, and a grandchild class inheriting from the child class, resulting in the creation and utilization of objects with methods to show name, age, and gender.', 'The process involves creating a parent class with a method to get and show the name, followed by a child class with methods to get and show the age, and finally a grandchild class with methods to get and show the gender.', 'Objects are instantiated for the grandchild class, and methods to set and display the name, age, and gender are invoked to showcase the multi-level inheritance concept in action.']}], 'duration': 940.448, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts9256307.jpg', 'highlights': ["The chapter demonstrates creating and invoking a child class that overwrites the parent class method, showcasing the inheritance of the parent class's method with quantifiable data such as 'Number of tires in car are 8' and 'Horsepower is 999'.", 'The chapter highlights the demonstration of single inheritance, where one child class inherits from one super class, indicating a clear explanation of the concept before delving into the other types of inheritance in Python.', 'An example of multi-level inheritance is demonstrated with a parent class being inherited by a child class, and a grandchild class inheriting from the child class, resulting in the creation and utilization of objects with methods to show name, age, and gender.', 'The concept of multi-level inheritance is explained with an example of a parent-child-grandchild relationship.', 'The chapter demonstrates the creation of parent classes and the inheritance of properties into a child class, along with the invocation of methods.', 'It explains the concept of multiple inheritance in Python, highlighting that in multiple inheritance, the child inherits from more than one parent class, with emphasis on the fact that there is one child class which inherits from two parent classes.', 'The process involves creating a parent class with a method to get and show the name, followed by a child class with methods to get and show the age, and finally a grandchild class with methods to get and show the gender.', 'It mentions the different types of inheritance in Python, including single inheritance, multiple inheritance, multi-level inheritance, and hybrid inheritance, providing an overview of the concepts and indicating the intention to delve into the other three types after discussing single inheritance.']}, {'end': 11994.975, 'segs': [{'end': 10225.932, 'src': 'embed', 'start': 10196.895, 'weight': 0, 'content': [{'end': 10199.877, 'text': "Now, let's see what are the libraries in Python.", 'start': 10196.895, 'duration': 2.982}, {'end': 10206.401, 'text': 'So, Python library is a collection of functions and methods that allow you to perform many actions without writing your code.', 'start': 10200.357, 'duration': 6.044}, {'end': 10211.664, 'text': 'So, we will have to implement a lot of such functions and we will have to do a lot of specific tasks.', 'start': 10206.841, 'duration': 4.823}, {'end': 10216.267, 'text': 'If we have to write the whole code, then it will be a lot of code.', 'start': 10211.764, 'duration': 4.503}, {'end': 10220.569, 'text': "So, that's why sometimes we need some pre-built tools with which we can do everything.", 'start': 10216.287, 'duration': 4.282}, {'end': 10223.891, 'text': "So let's say we have to do data manipulation.", 'start': 10222.13, 'duration': 1.761}, {'end': 10225.932, 'text': "Let's say we have 1000 rows.", 'start': 10224.091, 'duration': 1.841}], 'summary': 'Python libraries provide pre-built functions for efficient coding, enabling tasks like data manipulation with ease, for example, handling 1000 rows.', 'duration': 29.037, 'max_score': 10196.895, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10196895.jpg'}, {'end': 10315.3, 'src': 'embed', 'start': 10284.005, 'weight': 1, 'content': [{'end': 10289.668, 'text': 'So, this is the basic intro of the libraries and we will start with NumPy library first.', 'start': 10284.005, 'duration': 5.663}, {'end': 10293.831, 'text': 'So NumPy basically stands for numerical Python.', 'start': 10291.109, 'duration': 2.722}, {'end': 10297.413, 'text': 'So if you add numerical Python, you will get NumPy library.', 'start': 10293.851, 'duration': 3.562}, {'end': 10302.616, 'text': 'And it is a core library for numeric and scientific computing, which I have already told you.', 'start': 10297.773, 'duration': 4.843}, {'end': 10307.879, 'text': 'And this Python NumPy has a lot of multi-dimensional array objects.', 'start': 10303.156, 'duration': 4.723}, {'end': 10315.3, 'text': 'So, if you have worked in C, C++ or Java, then you must have studied some data type of array.', 'start': 10308.399, 'duration': 6.901}], 'summary': 'Numpy is a core library for numeric and scientific computing with multi-dimensional array objects.', 'duration': 31.295, 'max_score': 10284.005, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10284005.jpg'}, {'end': 10381.252, 'src': 'embed', 'start': 10333.924, 'weight': 2, 'content': [{'end': 10334.604, 'text': 'So, this is very good.', 'start': 10333.924, 'duration': 0.68}, {'end': 10340.79, 'text': 'And along with these multidimensional arrays, you have some methods.', 'start': 10337.345, 'duration': 3.445}, {'end': 10344.915, 'text': 'By using those methods, you can process these multidimensional arrays.', 'start': 10340.87, 'duration': 4.045}, {'end': 10350.126, 'text': 'So this is a brief introduction of NumPy array.', 'start': 10347.363, 'duration': 2.763}, {'end': 10353.389, 'text': "So now let's see how we can create a NumPy array in Python.", 'start': 10350.146, 'duration': 3.243}, {'end': 10355.752, 'text': 'So here you can see two examples.', 'start': 10353.43, 'duration': 2.322}, {'end': 10359.536, 'text': 'One is a single dimensional array and the other is a multidimensional array.', 'start': 10355.852, 'duration': 3.684}, {'end': 10365.342, 'text': 'So here first of all if we want to work with NumPy then we have to load that library.', 'start': 10360.077, 'duration': 5.265}, {'end': 10368.426, 'text': 'And I am writing here import NumPy as np.', 'start': 10365.703, 'duration': 2.723}, {'end': 10371.507, 'text': 'So here I have given an alias of NumPy.', 'start': 10368.806, 'duration': 2.701}, {'end': 10375.589, 'text': 'If I have to call NumPy again and again, then it is a very cumbersome task.', 'start': 10371.567, 'duration': 4.022}, {'end': 10377.31, 'text': 'It means a lot of hard work.', 'start': 10375.629, 'duration': 1.681}, {'end': 10381.252, 'text': "And because mostly coders or programmers are lazy, that's why we look for shortcuts.", 'start': 10377.51, 'duration': 3.742}], 'summary': 'Introduction to numpy arrays and their creation in python.', 'duration': 47.328, 'max_score': 10333.924, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10333924.jpg'}, {'end': 10595.715, 'src': 'embed', 'start': 10566.669, 'weight': 4, 'content': [{'end': 10574.315, 'text': 'So sometimes we just need a NumPy array in which initially we put zeros and then if we want to manipulate something, we can manipulate it later.', 'start': 10566.669, 'duration': 7.646}, {'end': 10578.98, 'text': 'So here we have a method in NumPy which is called zeros method.', 'start': 10574.776, 'duration': 4.204}, {'end': 10584.324, 'text': 'So we have loaded NumPy and after loading we are writing here np.zeros.', 'start': 10579.54, 'duration': 4.784}, {'end': 10587.827, 'text': 'So we are giving two parameters to np.zeros.', 'start': 10584.745, 'duration': 3.082}, {'end': 10595.715, 'text': 'So how many rows do we need and how many columns do we need? So we need a NumPy array whose dimensions are 1 x 2.', 'start': 10588.188, 'duration': 7.527}], 'summary': 'Using numpy zeros method to create 1x2 array.', 'duration': 29.046, 'max_score': 10566.669, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10566669.jpg'}, {'end': 10907.932, 'src': 'embed', 'start': 10874.155, 'weight': 5, 'content': [{'end': 10876.816, 'text': "So now let's see how to initialize a NumPy array with random numbers.", 'start': 10874.155, 'duration': 2.661}, {'end': 10883.139, 'text': 'So we have a sub-module in NumPy named random and inside that sub-module there is a method randint.', 'start': 10876.996, 'duration': 6.143}, {'end': 10887.361, 'text': 'So again we will use np.random.randint and here again there are 3 parameters 1 and 100.', 'start': 10883.159, 'duration': 4.202}, {'end': 10890.723, 'text': 'So in this range of 1 and 100 I need 5 random integers.', 'start': 10887.361, 'duration': 3.362}, {'end': 10907.932, 'text': 'I am again telling you 1 and 100, right? So this is our range.', 'start': 10903.309, 'duration': 4.623}], 'summary': 'Using numpy, initialize array with 5 random integers between 1 and 100.', 'duration': 33.777, 'max_score': 10874.155, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10874155.jpg'}, {'end': 11314.813, 'src': 'embed', 'start': 11282.284, 'weight': 6, 'content': [{'end': 11283.545, 'text': 'First, I will pass n1 and then n2.', 'start': 11282.284, 'duration': 1.261}, {'end': 11286.846, 'text': 'As you can see, I have column stacked n1 and n2.', 'start': 11283.565, 'duration': 3.281}, {'end': 11291.428, 'text': 'We can stack both numpy arrays horizontally, vertically or column-stacked.', 'start': 11286.906, 'duration': 4.522}, {'end': 11299.894, 'text': "So now let's see some operations.", 'start': 11298.712, 'duration': 1.182}, {'end': 11304.4, 'text': 'So we have two operations, one is intersection and the other is difference.', 'start': 11299.934, 'duration': 4.466}, {'end': 11307.063, 'text': "So let's see what intersection is here.", 'start': 11304.96, 'duration': 2.103}, {'end': 11310.407, 'text': 'So we have one array in which the values are from 10 to 60.', 'start': 11307.263, 'duration': 3.144}, {'end': 11314.813, 'text': 'The other NumPy array in which the values are from 50 to 90.', 'start': 11310.407, 'duration': 4.406}], 'summary': 'Demonstrating numpy array operations including stacking, intersection, and difference.', 'duration': 32.529, 'max_score': 11282.284, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts11282284.jpg'}], 'start': 10196.895, 'title': 'Python libraries and numpy', 'summary': 'Discusses the importance of python libraries in simplifying coding tasks, with a specific focus on the numpy library for numeric and scientific computing, including examples of array initialization, manipulation, and operations.', 'chapters': [{'end': 10239.058, 'start': 10196.895, 'title': 'Python libraries overview', 'summary': "Discusses the importance of python libraries in simplifying coding tasks by providing pre-built tools and functions, such as data manipulation, which can significantly reduce the amount of manual coding required, as illustrated by the example of identifying employee names starting with 'j' in a dataset of 1000 rows.", 'duration': 42.163, 'highlights': ['Python libraries are collections of functions and methods that enable performing actions without extensive coding, reducing manual coding tasks significantly.', "Illustrates the importance of libraries by highlighting a scenario where manual identification of employee names starting with 'J' in 1000 rows is impractical, emphasizing the need for pre-built tools and functions for data manipulation."]}, {'end': 10543.332, 'start': 10239.318, 'title': 'Introduction to numpy library', 'summary': 'Introduces python libraries pandas, numpy, and matplotlib for data manipulation, numerical computing, and visualization, highlighting numpy as a core library for numeric and scientific computing, with support for multi-dimensional array objects and methods, and demonstrates how to create single and multi-dimensional arrays using numpy.', 'duration': 304.014, 'highlights': ['NumPy is introduced as a core library for numeric and scientific computing, offering support for multi-dimensional array objects and methods, essential for data manipulation and numerical computing.', 'The process of creating single and multi-dimensional arrays using NumPy is demonstrated, showcasing the ease and flexibility of array creation and manipulation in Python.', 'The importance of using aliases for libraries in Python is emphasized, highlighting the convenience and efficiency it offers in coding and programming tasks.']}, {'end': 10874.155, 'start': 10543.332, 'title': 'Numpy array initialization', 'summary': 'Demonstrates the initialization of numpy arrays using methods like np.zeros, np.full, and np.arange, creating arrays with specific dimensions and values like 2x3, 3x3, and 10x10, and generating sequences of numbers with specific ranges and intervals.', 'duration': 330.823, 'highlights': ['Demonstrates the initialization of NumPy arrays using methods like np.zeros, np.full, and np.arange.', 'Creating arrays with specific dimensions and values like 2x3, 3x3, and 10x10.', 'Generating sequences of numbers with specific ranges and intervals.']}, {'end': 11280.776, 'start': 10874.155, 'title': 'Numpy array initialization and manipulation', 'summary': 'Discusses initializing numpy arrays with random numbers, checking and changing array shapes, and joining arrays vertically, horizontally, and by columns using np.random.randint, shape operator, and np.vstack, np.hstack, and np.columnstack methods.', 'duration': 406.621, 'highlights': ['The method for initializing a NumPy array with random numbers using np.random.randint and generating 5 random integers between 1 and 100 is explained.', 'Demonstration of checking and changing the shape of a NumPy array, including changing a 2x3 array to a 3x2 array and then to a 2x4 array, is provided.', 'Explanation of how to join two NumPy arrays using vertical stacking, horizontal stacking, and column stacking, with examples of using np.vstack, np.hstack, and np.columnstack methods.']}, {'end': 11994.975, 'start': 11282.284, 'title': 'Numpy array operations', 'summary': 'Covers numpy array operations including stacking arrays, performing intersection and difference operations, basic array mathematics, scalar operations, working with numpy functions, and saving/loading numpy arrays.', 'duration': 712.691, 'highlights': ['The chapter covers NumPy array operations including stacking arrays, performing intersection and difference operations, basic array mathematics, scalar operations, working with NumPy functions, and saving/loading NumPy arrays.', 'Performing intersection and difference operations on NumPy arrays.', 'Basic array mathematics including summing arrays and adding elements along specific axes.', 'Performing scalar operations such as addition, subtraction, multiplication, and division on NumPy arrays.', 'Working with NumPy functions to find mean, median, and standard deviation of arrays.', 'Saving and loading NumPy arrays using np.save and np.load methods.']}], 'duration': 1798.08, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts10196895.jpg', 'highlights': ['Python libraries simplify coding tasks, reducing manual coding significantly.', 'NumPy is essential for numeric and scientific computing in Python.', 'Demonstrates array initialization and manipulation using NumPy.', 'Illustrates the importance of using aliases for libraries in Python.', 'Demonstrates the initialization of NumPy arrays using methods like np.zeros, np.full, and np.arange.', 'Explains the method for initializing a NumPy array with random numbers using np.random.randint.', 'Covers NumPy array operations including stacking arrays, intersection, difference, basic array mathematics, scalar operations, NumPy functions, and saving/loading arrays.']}, {'end': 13838.707, 'segs': [{'end': 12024.056, 'src': 'embed', 'start': 11994.995, 'weight': 0, 'content': [{'end': 11996.256, 'text': 'New n1 and this is my new n1 here.', 'start': 11994.995, 'duration': 1.261}, {'end': 12002.939, 'text': 'So, we have seen how to do numerical computing with the help of NumPy library.', 'start': 11998.715, 'duration': 4.224}, {'end': 12007.924, 'text': 'Now, we will see how to do data manipulation with the help of Pandas library.', 'start': 12002.959, 'duration': 4.965}, {'end': 12014.63, 'text': 'So, as written here, Pandas stands for Panel Data and it is a core library for data manipulation and data analysis.', 'start': 12008.524, 'duration': 6.106}, {'end': 12024.056, 'text': 'Just like NumPy used to give us some arrays, Pandas provides us with single dimensional and multi dimensional data structures.', 'start': 12016.932, 'duration': 7.124}], 'summary': 'Introduction to numpy and pandas for numerical and data manipulation.', 'duration': 29.061, 'max_score': 11994.995, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts11994995.jpg'}, {'end': 12705.561, 'src': 'embed', 'start': 12669.62, 'weight': 4, 'content': [{'end': 12672.001, 'text': "Now, let's see by doing multiplication.", 'start': 12669.62, 'duration': 2.381}, {'end': 12673.222, 'text': "Let's do S1 into 5 here.", 'start': 12672.242, 'duration': 0.98}, {'end': 12685.07, 'text': 'right. so this is from 1 to 9, and if we multiply it by 5, then it will be 45.', 'start': 12680.626, 'duration': 4.444}, {'end': 12693.816, 'text': 'then here I will use divided by so s1 divided by, suppose I have to divide by 10, so s1 divided by 10, and all these values are here.', 'start': 12685.07, 'duration': 8.746}, {'end': 12694.917, 'text': "so now let's see those set.", 'start': 12693.816, 'duration': 1.101}, {'end': 12705.561, 'text': "So now let's see how we can add two series objects.", 'start': 12703.8, 'duration': 1.761}], 'summary': 'Demonstrated multiplication and division with specific numbers, resulting in 45 and a set of values, followed by adding two series objects.', 'duration': 35.941, 'max_score': 12669.62, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts12669620.jpg'}, {'end': 12853.665, 'src': 'embed', 'start': 12819.043, 'weight': 1, 'content': [{'end': 12825.544, 'text': 'The first key value pair, here the key is named and the values are Bob, Sam, Annie.', 'start': 12819.043, 'duration': 6.501}, {'end': 12827.885, 'text': 'Then marks, marks are 76, 25, 92.', 'start': 12826.184, 'duration': 1.701}, {'end': 12831.568, 'text': "Right, so now let's create the data frame.", 'start': 12827.885, 'duration': 3.683}, {'end': 12834.13, 'text': 'So here I will write pd.dataFrame.', 'start': 12831.608, 'duration': 2.522}, {'end': 12840.675, 'text': 'And here first of all I will give a name.', 'start': 12834.43, 'duration': 6.245}, {'end': 12844.438, 'text': 'So I actually have to pass a dictionary here.', 'start': 12840.715, 'duration': 3.723}, {'end': 12846.039, 'text': 'So I will write dictionary.', 'start': 12844.478, 'duration': 1.561}, {'end': 12848.822, 'text': 'First key will be my name.', 'start': 12846.8, 'duration': 2.022}, {'end': 12853.665, 'text': 'And some corresponding values will be there.', 'start': 12849.702, 'duration': 3.963}], 'summary': 'Transcript covers creating a data frame with names and marks.', 'duration': 34.622, 'max_score': 12819.043, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts12819043.jpg'}, {'end': 13589.373, 'src': 'heatmap', 'start': 12853.885, 'weight': 1, 'content': [{'end': 12855.827, 'text': "So let's assume we take that only.", 'start': 12853.885, 'duration': 1.942}, {'end': 12862.063, 'text': 'Annie, then Bob, then Matt.', 'start': 12856.5, 'duration': 5.563}, {'end': 12865.845, 'text': 'So we have created a key value pair.', 'start': 12862.243, 'duration': 3.602}, {'end': 12870.048, 'text': 'After this, I have to create another key value pair.', 'start': 12865.945, 'duration': 4.103}, {'end': 12872.929, 'text': 'After name, we give marks.', 'start': 12870.288, 'duration': 2.641}, {'end': 12875.711, 'text': "I'll add a colon here.", 'start': 12872.989, 'duration': 2.722}, {'end': 12886.24, 'text': "Let's assume Annie's score is 75, Bob's score is 12, and Matt's score is 82.", 'start': 12875.751, 'duration': 10.489}, {'end': 12887.781, 'text': 'So, I have created a data frame.', 'start': 12886.24, 'duration': 1.541}, {'end': 12891.282, 'text': 'Here we have an error pd.dataFrame module pandas has.', 'start': 12887.801, 'duration': 3.481}, {'end': 12893.722, 'text': "So, let's call it data.frame.", 'start': 12891.302, 'duration': 2.42}, {'end': 12898.964, 'text': 'So, I will call it small d and remove it.', 'start': 12893.822, 'duration': 5.142}, {'end': 12901.765, 'text': "Let's see now.", 'start': 12898.984, 'duration': 2.781}, {'end': 12911.827, 'text': 'Here, both D and F should be capital.', 'start': 12909.406, 'duration': 2.421}, {'end': 12917.971, 'text': 'So, I will make it capital D and I will make it capital F.', 'start': 12911.867, 'duration': 6.104}, {'end': 12921.173, 'text': 'Right And we have successfully made a data frame like this.', 'start': 12917.971, 'duration': 3.202}, {'end': 12927.036, 'text': 'PD.DataFrame And here, as you can see, the key will be the name of the column.', 'start': 12921.233, 'duration': 5.803}, {'end': 12930.938, 'text': 'Name and marks, which is the key in this dictionary, have become the names of the columns.', 'start': 12927.096, 'duration': 3.842}, {'end': 12934.961, 'text': 'And the values of the names will become the records of this column.', 'start': 12931.419, 'duration': 3.542}, {'end': 12939.429, 'text': 'And the values of the marks are the records of the column.', 'start': 12935.041, 'duration': 4.388}, {'end': 12941.979, 'text': 'Again, you have the index values with you.', 'start': 12939.509, 'duration': 2.47}, {'end': 12944.644, 'text': 'So now we will work with some built-in functions.', 'start': 12942.944, 'duration': 1.7}, {'end': 12949.305, 'text': 'You have shape, tail, describe, and head.', 'start': 12944.744, 'duration': 4.561}, {'end': 12954.986, 'text': 'So if you want to see the first 5 rows of a data frame, you can use the head method.', 'start': 12949.485, 'duration': 5.501}, {'end': 12958.187, 'text': 'If you want to see the last 5 rows, you can use the tail method.', 'start': 12955.006, 'duration': 3.181}, {'end': 12964.668, 'text': 'If you want to know the number of rows and columns in a data frame, you can use the shape method.', 'start': 12958.207, 'duration': 6.461}, {'end': 12968.229, 'text': 'And if you want general information about a data set, you can use the describe method.', 'start': 12964.688, 'duration': 3.541}, {'end': 12975.964, 'text': 'So for this I will actually load a data set and it is actually in CSV format.', 'start': 12969.96, 'duration': 6.004}, {'end': 12980.927, 'text': 'So I will store it in a new data frame whose name will be iris.', 'start': 12976.304, 'duration': 4.623}, {'end': 12987.972, 'text': 'So iris equal to I will write pd.read underscore csv.', 'start': 12981.527, 'duration': 6.445}, {'end': 12992.875, 'text': 'So if I want to read a CSV file, I can use this readCSV method.', 'start': 12988.652, 'duration': 4.223}, {'end': 12997.217, 'text': 'And this CSV file is already stored with me, so I will write iris.csv here.', 'start': 12992.915, 'duration': 4.302}, {'end': 13004.206, 'text': 'To work with all these functions, we will load the iris dataset.', 'start': 13000.725, 'duration': 3.481}, {'end': 13010.508, 'text': 'If we want to load a dataset, we will have to use the pd.readcsv method.', 'start': 13004.306, 'duration': 6.202}, {'end': 13011.429, 'text': 'I will write pd.readcsv here.', 'start': 13010.528, 'duration': 0.901}, {'end': 13016.531, 'text': 'Since this is a CSV file, we are using the readcsv method.', 'start': 13011.449, 'duration': 5.082}, {'end': 13018.351, 'text': 'The file name is iris.csv.', 'start': 13016.671, 'duration': 1.68}, {'end': 13021.992, 'text': 'I will store it in a new object and name it iris.', 'start': 13018.411, 'duration': 3.581}, {'end': 13031.036, 'text': 'So, my dataset is ready.', 'start': 13029.335, 'duration': 1.701}, {'end': 13041.059, 'text': 'So, if I want to see the first 5 records of this dataset, I will first write iris, then using dot operator, I will write head method here.', 'start': 13031.056, 'duration': 10.003}, {'end': 13044.961, 'text': 'So, you can see that I have printed the first 5 records of this dataset.', 'start': 13041.079, 'duration': 3.882}, {'end': 13050.123, 'text': 'Similarly, if I want the last 5 records, then I will use tail method.', 'start': 13045.061, 'duration': 5.062}, {'end': 13059.318, 'text': 'So I will write iris.tail and you can see the last 5 records are here starting from 145 going on till 149.', 'start': 13051.493, 'duration': 7.825}, {'end': 13062.04, 'text': 'So the last 5 records are in front of the dataset.', 'start': 13059.318, 'duration': 2.722}, {'end': 13070.146, 'text': 'If I want to see how many rows and columns are there in this data frame, So I will use the shape method.', 'start': 13062.06, 'duration': 8.086}, {'end': 13073.149, 'text': 'So here I will write iris.shape.', 'start': 13070.326, 'duration': 2.823}, {'end': 13077.232, 'text': 'So you can see it has 150 rows and 5 columns.', 'start': 13073.569, 'duration': 3.663}, {'end': 13085.019, 'text': 'So you can see the columns 1,2,3,4,5 and in total 150 records starting from index number 0 going on till index number 149.', 'start': 13077.552, 'duration': 7.467}, {'end': 13087.961, 'text': "So now let's see the describe method.", 'start': 13085.019, 'duration': 2.942}, {'end': 13095.821, 'text': 'iris.describe So, this will tell us some basic things about this.', 'start': 13088.001, 'duration': 7.82}, {'end': 13103.051, 'text': 'So, if I want the mean of every individual column, minimum, standard deviation, etc.', 'start': 13096.042, 'duration': 7.009}, {'end': 13107.384, 'text': 'So, for example, I want the mean of sepal width.', 'start': 13105.043, 'duration': 2.341}, {'end': 13114.545, 'text': 'Means, in this column, whatever values are there, I want the mean of all those values.', 'start': 13107.564, 'duration': 6.981}, {'end': 13116.125, 'text': 'So, it will tell me that this is 3.05.', 'start': 13114.565, 'duration': 1.56}, {'end': 13122.687, 'text': 'Similarly, if I want the minimum value of petal length, then you can see that minimum petal length is 1.', 'start': 13116.125, 'duration': 6.562}, {'end': 13125.747, 'text': 'Similarly, I want the maximum value of sepal length.', 'start': 13122.687, 'duration': 3.06}, {'end': 13128.608, 'text': 'So, here you can see the sepal length, the maximum value is 7.9.', 'start': 13125.827, 'duration': 2.781}, {'end': 13132.469, 'text': 'So, all this basic information will give you the describe method here.', 'start': 13128.608, 'duration': 3.861}, {'end': 13137.537, 'text': 'So, now we will see what are iLock and Lock methods.', 'start': 13133.936, 'duration': 3.601}, {'end': 13146.4, 'text': 'So, now we have a data set, from that data set we have to extract some values, some records, how can we do that? So, for that we have this .', 'start': 13137.557, 'duration': 8.843}, {'end': 13146.8, 'text': 'ilock method.', 'start': 13146.4, 'duration': 0.4}, {'end': 13150.702, 'text': 'This is our dataFrame.', 'start': 13149.221, 'duration': 1.481}, {'end': 13159.505, 'text': 'If I want to extract the first 3 rows and the first 2 columns from this dataFrame, I will do this.', 'start': 13151.282, 'duration': 8.223}, {'end': 13161.466, 'text': 'iris, which is the name of the dataFrame, then .', 'start': 13159.625, 'duration': 1.841}, {'end': 13164.687, 'text': 'ilog I will give a parenthesis after the ilog method.', 'start': 13161.466, 'duration': 3.221}, {'end': 13172.771, 'text': 'The comma here will indicate the rows on the left side of the comma and the columns on the right side of the comma.', 'start': 13166.528, 'duration': 6.243}, {'end': 13176.812, 'text': 'So, I am extracting the first 3 rows from 0 to 3.', 'start': 13172.811, 'duration': 4.001}, {'end': 13182.875, 'text': 'So, I have extracted the first 3 rows and here I am extracting the first 2 columns sepal length and sepal width.', 'start': 13176.812, 'duration': 6.063}, {'end': 13192.139, 'text': "So, let's implement this example and I'll show you by printing its head again.", 'start': 13189.397, 'duration': 2.742}, {'end': 13192.64, 'text': 'This is my head.', 'start': 13192.179, 'duration': 0.461}, {'end': 13198.564, 'text': "So, let's say I want to bring records from 5 to 10 and I want this Petal Length and Species column here.", 'start': 13192.66, 'duration': 5.904}, {'end': 13212.434, 'text': 'So, I will write iris.ilog.', 'start': 13210.273, 'duration': 2.161}, {'end': 13219.958, 'text': 'The index value will start from 5 and I want the index value to be 11.', 'start': 13212.754, 'duration': 7.204}, {'end': 13221.999, 'text': 'So, I will write 10.', 'start': 13219.958, 'duration': 2.041}, {'end': 13224.82, 'text': 'And which column do I want here? 0, 1, 2.', 'start': 13221.999, 'duration': 2.821}, {'end': 13227.382, 'text': "Petal length's index value is 2.", 'start': 13224.821, 'duration': 2.561}, {'end': 13230.324, 'text': 'And I want species whose index value is 4.', 'start': 13227.382, 'duration': 2.942}, {'end': 13231.945, 'text': 'So, I will write this.', 'start': 13230.324, 'duration': 1.621}, {'end': 13233.666, 'text': 'I will print it here.', 'start': 13231.965, 'duration': 1.701}, {'end': 13235.827, 'text': 'So, too many indexers.', 'start': 13234.286, 'duration': 1.541}, {'end': 13237.307, 'text': 'So, here we will.', 'start': 13236.407, 'duration': 0.9}, {'end': 13243.252, 'text': 'Suppose I want all the records from this data frame starting at index no.', 'start': 13238.388, 'duration': 4.864}, {'end': 13245.354, 'text': '5 going on till index no.', 'start': 13243.552, 'duration': 1.802}, {'end': 13250.018, 'text': '10 And suppose I want to extract the Petal Length, Petal Width and Species column.', 'start': 13245.374, 'duration': 4.644}, {'end': 13255.442, 'text': 'So I will write iris.iloc and here I will first give the rows.', 'start': 13250.118, 'duration': 5.324}, {'end': 13267.434, 'text': 'from 5 to 11 because 11 is exclusive and I need petal length, petal width and species.', 'start': 13261.053, 'duration': 6.381}, {'end': 13270.735, 'text': 'So, I need 0, 1, 2.', 'start': 13267.854, 'duration': 2.881}, {'end': 13275.196, 'text': 'So, I need all the columns from 2 to 10.', 'start': 13270.735, 'duration': 4.461}, {'end': 13285.043, 'text': 'So, I have extracted petal length, petal width and species columns and I have extracted index values or row values from 5 to 10.', 'start': 13275.196, 'duration': 9.847}, {'end': 13288.548, 'text': 'So we also have dot lock method like dot ilock.', 'start': 13285.043, 'duration': 3.505}, {'end': 13294.916, 'text': 'So the only difference is when we are giving columns, we used to give column indexes, here we will give column names.', 'start': 13288.568, 'duration': 6.348}, {'end': 13302.366, 'text': 'So here I have to extract sepal length and petal length, so I will just give sepal length and petal length as column names and I have extracted it.', 'start': 13294.956, 'duration': 7.41}, {'end': 13305.269, 'text': 'And it is always 0 to 3.', 'start': 13303.107, 'duration': 2.162}, {'end': 13308.632, 'text': 'And the difference here is that 3 is inclusive.', 'start': 13305.269, 'duration': 3.363}, {'end': 13311.654, 'text': 'So the difference between .', 'start': 13309.592, 'duration': 2.062}, {'end': 13312.535, 'text': 'iloc and .', 'start': 13311.654, 'duration': 0.881}, {'end': 13317.418, 'text': 'loc is that you see the index of iloc and 0 to 3 means 0 to 3 both are inclusive.', 'start': 13312.535, 'duration': 4.883}, {'end': 13319.5, 'text': '0 is also inclusive and 3 is also inclusive.', 'start': 13317.438, 'duration': 2.062}, {'end': 13325.345, 'text': 'So you are getting 4 records here and basically you are getting the first 4 records of these two columns here.', 'start': 13320, 'duration': 5.345}, {'end': 13328.712, 'text': 'So now we will work with the dot lock method.', 'start': 13326.53, 'duration': 2.182}, {'end': 13331.974, 'text': 'So I will write iris.lock here.', 'start': 13328.852, 'duration': 3.122}, {'end': 13340.781, 'text': 'So now suppose I want all the records starting from index number 1 going on till index number 10.', 'start': 13332.014, 'duration': 8.767}, {'end': 13342.022, 'text': 'So 1 is 2.', 'start': 13340.781, 'duration': 1.241}, {'end': 13343.583, 'text': 'I will write 10 here.', 'start': 13342.022, 'duration': 1.561}, {'end': 13346.205, 'text': 'After this I need two columns.', 'start': 13344.064, 'duration': 2.141}, {'end': 13349.988, 'text': 'The first column is petal length and the second column is species.', 'start': 13346.225, 'duration': 3.763}, {'end': 13354.472, 'text': 'So I will write petal.length here.', 'start': 13350.809, 'duration': 3.663}, {'end': 13357.414, 'text': 'It should actually be capital here.', 'start': 13355.452, 'duration': 1.962}, {'end': 13360.377, 'text': 'Then my second column should be species.', 'start': 13357.574, 'duration': 2.803}, {'end': 13362.7, 'text': 'So I will write species here.', 'start': 13360.437, 'duration': 2.263}, {'end': 13370.769, 'text': 'So as you can see here, I have extracted these 10 records for the columns petal length and species.', 'start': 13362.72, 'duration': 8.049}, {'end': 13377.23, 'text': "So let's see how we can remove or drop a column.", 'start': 13371.547, 'duration': 5.683}, {'end': 13380.452, 'text': 'Axis is equal to 1 means it denotes a column.', 'start': 13377.671, 'duration': 2.781}, {'end': 13385.415, 'text': 'So we have 5 columns and I have to drop a sepal length column.', 'start': 13380.472, 'duration': 4.943}, {'end': 13387.477, 'text': 'So you will use the drop method.', 'start': 13385.435, 'duration': 2.042}, {'end': 13390.919, 'text': 'First you will write the name of the data frame which is iris.', 'start': 13387.557, 'duration': 3.362}, {'end': 13392.139, 'text': 'So iris.drop.', 'start': 13391.299, 'duration': 0.84}, {'end': 13396.327, 'text': 'The first parameter is the column you want to drop.', 'start': 13393.12, 'duration': 3.207}, {'end': 13398.691, 'text': 'The second parameter is the axis.', 'start': 13396.487, 'duration': 2.204}, {'end': 13401.157, 'text': 'If you write axis is equal to 0, you will drop the rows.', 'start': 13398.712, 'duration': 2.445}, {'end': 13403.602, 'text': 'If you write axis is equal to 1, you will drop the columns.', 'start': 13401.177, 'duration': 2.425}, {'end': 13410.878, 'text': 'So I will print iris.head here again because it will be easier for you to understand.', 'start': 13405.077, 'duration': 5.801}, {'end': 13416.4, 'text': 'So this is the head and now I have to drop the species column.', 'start': 13410.898, 'duration': 5.502}, {'end': 13423.882, 'text': 'So I will write iris.drop here, my first parameter will be the column that I want to drop.', 'start': 13416.42, 'duration': 7.462}, {'end': 13432.444, 'text': 'So here I will write species and here I will set the axis which is 1 because I have to drop the columns.', 'start': 13423.922, 'duration': 8.522}, {'end': 13436.189, 'text': 'So, as you can see, I have dropped the species column.', 'start': 13434.087, 'duration': 2.102}, {'end': 13440.933, 'text': "And now let's see how to drop the rows.", 'start': 13436.709, 'duration': 4.224}, {'end': 13445.217, 'text': "So, let's assume that I have to drop all these index rows, 1, 2 and 3.", 'start': 13440.953, 'duration': 4.264}, {'end': 13449.421, 'text': 'So, just write the index values here and then set the axis equal to 0.', 'start': 13445.217, 'duration': 4.204}, {'end': 13452.143, 'text': 'Axis equal to 0 means that the rows are done.', 'start': 13449.421, 'duration': 2.722}, {'end': 13454.085, 'text': 'So, this was our original data set.', 'start': 13452.303, 'duration': 1.782}, {'end': 13456.087, 'text': 'So, I have dropped all these index values.', 'start': 13454.105, 'duration': 1.982}, {'end': 13461.069, 'text': 'So, you can see that 1, 2, 3 are not here, it starts directly from 4 after 0.', 'start': 13456.127, 'duration': 4.942}, {'end': 13463.531, 'text': 'So again I will write iris.head here.', 'start': 13461.069, 'duration': 2.462}, {'end': 13464.852, 'text': 'This is my data frame.', 'start': 13463.651, 'duration': 1.201}, {'end': 13467.214, 'text': 'Then here I will write iris.drop.', 'start': 13464.992, 'duration': 2.222}, {'end': 13470.917, 'text': 'Then suppose I have to drop 5th, 6th and 7th rows here.', 'start': 13467.254, 'duration': 3.663}, {'end': 13474.9, 'text': 'So I will do iris.drop Then I will set axis as equal to 0 here.', 'start': 13470.937, 'duration': 3.963}, {'end': 13502.325, 'text': 'So I will actually I will store this in a new data frame whose name will be i1, then i1.head, I will show you the first 10 records of this.', 'start': 13474.92, 'duration': 27.405}, {'end': 13505.407, 'text': 'So as you can see 0, 1, 2, 3, 4, after 4, 5, 6, 7 have been skipped and we have 8 here.', 'start': 13502.345, 'duration': 3.062}, {'end': 13513.16, 'text': "So now let's see some basic functions.", 'start': 13511.459, 'duration': 1.701}, {'end': 13518.481, 'text': 'So the describe method that we saw, if we want to do it individually, we can do that too.', 'start': 13513.18, 'duration': 5.301}, {'end': 13522.903, 'text': 'So if you want to see the mean, then just see the name of the dataset, then the mean method.', 'start': 13518.501, 'duration': 4.402}, {'end': 13526.104, 'text': 'If you want to see the minimum value, then the name of the dataset.', 'start': 13523.083, 'duration': 3.021}, {'end': 13532.546, 'text': 'if you want to see the median, then iris.median, and if you want to see the maximum, then iris.max.', 'start': 13526.104, 'duration': 6.442}, {'end': 13535.027, 'text': 'So here I will print our original dataset again.', 'start': 13532.686, 'duration': 2.341}, {'end': 13536.308, 'text': 'This is our original dataset.', 'start': 13535.167, 'duration': 1.141}, {'end': 13542.27, 'text': 'And I want to know the minimum values of all these columns.', 'start': 13537.407, 'duration': 4.863}, {'end': 13543.47, 'text': 'So, I will write iris.minimum.', 'start': 13542.29, 'duration': 1.18}, {'end': 13545.711, 'text': 'So, these are the minimum values.', 'start': 13543.61, 'duration': 2.101}, {'end': 13551.254, 'text': "Sepal length's minimum value is 4.3, sepal width's 2, petal length's 1 and so on.", 'start': 13546.052, 'duration': 5.202}, {'end': 13556.357, 'text': 'Similarly, if I want to know the maximum values, I will write iris.max.', 'start': 13551.274, 'duration': 5.083}, {'end': 13561.479, 'text': 'So, you can see that I got the maximum values with respect to all the columns here.', 'start': 13557.117, 'duration': 4.362}, {'end': 13563.561, 'text': 'Then, I will write iris.mean.', 'start': 13561.519, 'duration': 2.042}, {'end': 13568.935, 'text': 'So these are all the mean values here.', 'start': 13567.654, 'duration': 1.281}, {'end': 13574.7, 'text': 'Then I have to know the median value, iris.median.', 'start': 13568.955, 'duration': 5.745}, {'end': 13577.603, 'text': 'So these are all the median values here.', 'start': 13574.72, 'duration': 2.883}, {'end': 13582.329, 'text': 'So, now we will work with the apply method.', 'start': 13579.108, 'duration': 3.221}, {'end': 13589.373, 'text': 'So, suppose I have to apply some particular method or operation in all the columns and rows.', 'start': 13582.77, 'duration': 6.603}], 'summary': 'Demonstrates creation of data frame, loading csv dataset, and using built-in functions like head, tail, shape, describe, iloc, loc, drop, mean, min, max, median, and apply with pandas in python.', 'duration': 735.488, 'max_score': 12853.885, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts12853885.jpg'}, {'end': 13087.961, 'src': 'embed', 'start': 13059.318, 'weight': 7, 'content': [{'end': 13062.04, 'text': 'So the last 5 records are in front of the dataset.', 'start': 13059.318, 'duration': 2.722}, {'end': 13070.146, 'text': 'If I want to see how many rows and columns are there in this data frame, So I will use the shape method.', 'start': 13062.06, 'duration': 8.086}, {'end': 13073.149, 'text': 'So here I will write iris.shape.', 'start': 13070.326, 'duration': 2.823}, {'end': 13077.232, 'text': 'So you can see it has 150 rows and 5 columns.', 'start': 13073.569, 'duration': 3.663}, {'end': 13085.019, 'text': 'So you can see the columns 1,2,3,4,5 and in total 150 records starting from index number 0 going on till index number 149.', 'start': 13077.552, 'duration': 7.467}, {'end': 13087.961, 'text': "So now let's see the describe method.", 'start': 13085.019, 'duration': 2.942}], 'summary': 'The dataset has 150 rows and 5 columns, with records indexed from 0 to 149.', 'duration': 28.643, 'max_score': 13059.318, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13059318.jpg'}, {'end': 13319.5, 'src': 'embed', 'start': 13294.956, 'weight': 8, 'content': [{'end': 13302.366, 'text': 'So here I have to extract sepal length and petal length, so I will just give sepal length and petal length as column names and I have extracted it.', 'start': 13294.956, 'duration': 7.41}, {'end': 13305.269, 'text': 'And it is always 0 to 3.', 'start': 13303.107, 'duration': 2.162}, {'end': 13308.632, 'text': 'And the difference here is that 3 is inclusive.', 'start': 13305.269, 'duration': 3.363}, {'end': 13311.654, 'text': 'So the difference between .', 'start': 13309.592, 'duration': 2.062}, {'end': 13312.535, 'text': 'iloc and .', 'start': 13311.654, 'duration': 0.881}, {'end': 13317.418, 'text': 'loc is that you see the index of iloc and 0 to 3 means 0 to 3 both are inclusive.', 'start': 13312.535, 'duration': 4.883}, {'end': 13319.5, 'text': '0 is also inclusive and 3 is also inclusive.', 'start': 13317.438, 'duration': 2.062}], 'summary': 'Extracted sepal length and petal length, both ranging from 0 to 3 inclusive.', 'duration': 24.544, 'max_score': 13294.956, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13294956.jpg'}, {'end': 13563.561, 'src': 'embed', 'start': 13537.407, 'weight': 5, 'content': [{'end': 13542.27, 'text': 'And I want to know the minimum values of all these columns.', 'start': 13537.407, 'duration': 4.863}, {'end': 13543.47, 'text': 'So, I will write iris.minimum.', 'start': 13542.29, 'duration': 1.18}, {'end': 13545.711, 'text': 'So, these are the minimum values.', 'start': 13543.61, 'duration': 2.101}, {'end': 13551.254, 'text': "Sepal length's minimum value is 4.3, sepal width's 2, petal length's 1 and so on.", 'start': 13546.052, 'duration': 5.202}, {'end': 13556.357, 'text': 'Similarly, if I want to know the maximum values, I will write iris.max.', 'start': 13551.274, 'duration': 5.083}, {'end': 13561.479, 'text': 'So, you can see that I got the maximum values with respect to all the columns here.', 'start': 13557.117, 'duration': 4.362}, {'end': 13563.561, 'text': 'Then, I will write iris.mean.', 'start': 13561.519, 'duration': 2.042}], 'summary': 'Utilizing iris dataset, identified minimum, maximum, and mean values for various columns.', 'duration': 26.154, 'max_score': 13537.407, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13537407.jpg'}, {'end': 13624.348, 'src': 'embed', 'start': 13593.735, 'weight': 9, 'content': [{'end': 13596.936, 'text': 'So, first of all, I will create an inbuilt function.', 'start': 13593.735, 'duration': 3.201}, {'end': 13606.378, 'text': "So first of all, I'm making a user defined function with the name half.", 'start': 13602.551, 'duration': 3.827}, {'end': 13610.967, 'text': 'And it will take a parameter and return that half value by calling it half.', 'start': 13607.099, 'duration': 3.868}, {'end': 13616.56, 'text': 'So, this is my dataset and I have made a user defined function here.', 'start': 13613.117, 'duration': 3.443}, {'end': 13624.348, 'text': 'After this, I will apply the half method on these columns from the iris dataset.', 'start': 13616.6, 'duration': 7.748}], 'summary': "Creating a user-defined function 'half' to return half value from a dataset.", 'duration': 30.613, 'max_score': 13593.735, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13593735.jpg'}, {'end': 13807.493, 'src': 'embed', 'start': 13756.195, 'weight': 2, 'content': [{'end': 13758.236, 'text': 'then we can use value counts.', 'start': 13756.195, 'duration': 2.041}, {'end': 13763.157, 'text': 'So here we will use iris and on this species column we are using value counts method.', 'start': 13758.636, 'duration': 4.521}, {'end': 13770.58, 'text': 'And it is telling us that setosa has 50 records, virginica has 50 records and versicolor has 50 records present.', 'start': 13763.537, 'duration': 7.043}, {'end': 13772.14, 'text': 'This is the basic thing.', 'start': 13771.32, 'duration': 0.82}, {'end': 13776.822, 'text': 'And suppose we have to sort a column.', 'start': 13772.601, 'duration': 4.221}, {'end': 13781.144, 'text': 'So, I have to sort this data frame with respect to the sepal length column.', 'start': 13776.842, 'duration': 4.302}, {'end': 13784.445, 'text': 'So, now just use iris.sortValues method.', 'start': 13781.164, 'duration': 3.281}, {'end': 13790.308, 'text': 'Then with the by attribute, give the name of the column with which you have to sort.', 'start': 13784.525, 'duration': 5.783}, {'end': 13794.61, 'text': 'So, I have to sort this data frame with respect to the sepal length column.', 'start': 13790.468, 'duration': 4.142}, {'end': 13797.151, 'text': 'So, here you can see that it has been sorted.', 'start': 13794.77, 'duration': 2.381}, {'end': 13800.451, 'text': 'So, first of all we will work with the value counts method.', 'start': 13798.55, 'duration': 1.901}, {'end': 13801.651, 'text': 'So, I am writing iris here.', 'start': 13800.471, 'duration': 1.18}, {'end': 13807.493, 'text': 'Then I have to see the value counts of species column.', 'start': 13802.091, 'duration': 5.402}], 'summary': 'Using value counts, iris species column has 50 records each for setosa, virginica, and versicolor.', 'duration': 51.298, 'max_score': 13756.195, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13756195.jpg'}], 'start': 11994.995, 'title': 'Pandas data manipulation', 'summary': 'Covers creating and manipulating series objects, data frame basics and methods, dataframe indexing and extraction, and exploring the iris dataset, providing insights into the core functionalities of the library. it includes working with a dataset containing 150 rows and 5 columns, and applying user-defined functions, value counts, and sort values methods.', 'chapters': [{'end': 12240.026, 'start': 11994.995, 'title': 'Pandas data manipulation', 'summary': 'Covers the fundamentals of data manipulation with pandas, including creating series objects and changing index values, providing insights into the core functionalities of the library.', 'duration': 245.031, 'highlights': ['Pandas library is a core tool for data manipulation and analysis', 'Pandas provides single-dimensional and multi-dimensional data structures', 'Creating a series object in Pandas using a list of values 1, 2, 3, 4, 5', 'Changing index values of a series object from numerical to alphabetical']}, {'end': 12746.527, 'start': 12240.046, 'title': 'Creating and manipulating series objects', 'summary': 'Covers creating series objects from dictionaries and lists, changing series index, extracting individual values, performing arithmetic operations, and adding two series objects.', 'duration': 506.481, 'highlights': ['Creating series object from a dictionary with key-value pairs a: 10, b: 20, c: 30.', "Changing series index from ABC to BCDA and introducing a new index 'D' with a value of NAN.", 'Extracting individual values from a series object using index numbers and extracting sequences of elements.', 'Performing arithmetic operations on series objects including addition, subtraction, multiplication, and division.', 'Adding two series objects S1 and S2 to get the sum of corresponding elements.']}, {'end': 13137.537, 'start': 12746.547, 'title': 'Data frame basics and methods', 'summary': 'Covers the creation and manipulation of a data frame in python using pandas, including methods such as head, tail, shape, and describe, along with loading a dataset from a csv file and extracting key statistics, with an example of the iris dataset containing 150 rows and 5 columns.', 'duration': 390.99, 'highlights': ['Creation of a data frame using a dictionary with column names and values', 'Loading and displaying the iris dataset containing 150 rows and 5 columns', 'Mean, minimum, and maximum values of specific columns in the iris dataset']}, {'end': 13518.481, 'start': 13137.557, 'title': 'Dataframe indexing and extraction', 'summary': 'Explains how to extract specific rows and columns from a dataframe using iloc and loc methods, as well as how to drop columns and rows, using examples and detailed explanations.', 'duration': 380.924, 'highlights': ['Explaining iloc method for extracting specific rows and columns', 'Demonstrating the use of iloc method to extract specific rows and columns based on index values', 'Comparing iloc and loc methods for extracting data from DataFrame', 'Illustrating the process of dropping columns and rows from the DataFrame', 'Showing the practical application of DataFrame describe method for individual analysis']}, {'end': 13838.707, 'start': 13518.501, 'title': 'Exploring iris dataset in python', 'summary': 'Covers exploring the iris dataset in python, including finding mean, median, minimum, and maximum values, applying user-defined functions, using value counts and sort values methods.', 'duration': 320.206, 'highlights': ["Using iris.min to find minimum values of all columns: Sepal length's minimum value is 4.3, sepal width's 2, petal length's 1.", "Using iris.max to find maximum values of all columns: Sepal length's maximum value is 7.9, sepal width's 4.4, petal length's 6.9.", 'Using iris.mean to find mean values of all columns.', "Applying user-defined function 'half' to halve the values of sepal length and petal length columns, resulting in updated values.", "Applying user-defined function 'double make' to double the values of sepal width and petal width columns, resulting in updated values.", "Using iris.value_counts to count the occurrences of categorical values in the 'species' column.", "Using iris.sort_values to sort the data frame with respect to the 'sepal length' column."]}], 'duration': 1843.712, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts11994995.jpg', 'highlights': ['Pandas library is a core tool for data manipulation and analysis', 'Creation of a data frame using a dictionary with column names and values', "Using iris.sort_values to sort the data frame with respect to the 'sepal length' column", "Using iris.value_counts to count the occurrences of categorical values in the 'species' column", 'Performing arithmetic operations on series objects including addition, subtraction, multiplication, and division', "Using iris.min to find minimum values of all columns: Sepal length's minimum value is 4.3, sepal width's 2, petal length's 1", "Using iris.max to find maximum values of all columns: Sepal length's maximum value is 7.9, sepal width's 4.4, petal length's 6.9", 'Loading and displaying the iris dataset containing 150 rows and 5 columns', 'Comparing iloc and loc methods for extracting data from DataFrame', "Applying user-defined function 'half' to halve the values of sepal length and petal length columns, resulting in updated values"]}, {'end': 15926.73, 'segs': [{'end': 13868.389, 'src': 'embed', 'start': 13838.707, 'weight': 6, 'content': [{'end': 13840.288, 'text': 'I will give the name of the column.', 'start': 13838.707, 'duration': 1.581}, {'end': 13847.069, 'text': 'The name of the column is Petal.Width and this is our final data frame.', 'start': 13840.308, 'duration': 6.761}, {'end': 13852.49, 'text': 'As you can see, my entire data frame has been sorted with respect to PetalWidth column.', 'start': 13847.149, 'duration': 5.341}, {'end': 13855.524, 'text': 'So, all these were the operations with Pandas.', 'start': 13853.203, 'duration': 2.321}, {'end': 13863.487, 'text': 'So, now we will go to our final session where we will see how to do data visualization with the Matplotlib library.', 'start': 13855.544, 'duration': 7.943}, {'end': 13868.389, 'text': 'So, as you can see, you can make many different types of charts with Matplotlib.', 'start': 13864.087, 'duration': 4.302}], 'summary': 'Demonstrated sorting with pandas and data visualization with matplotlib.', 'duration': 29.682, 'max_score': 13838.707, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13838707.jpg'}, {'end': 14340.646, 'src': 'heatmap', 'start': 13935.849, 'weight': 7, 'content': [{'end': 13937.61, 'text': 'So import pyplot as plt.', 'start': 13935.849, 'duration': 1.761}, {'end': 13942.071, 'text': 'So first of all, we are making two NumPy arrays here.', 'start': 13938.51, 'duration': 3.561}, {'end': 13945.873, 'text': 'One NumPy array is going from 1 to 11.', 'start': 13942.091, 'duration': 3.782}, {'end': 13950.395, 'text': 'So from 1 to 10 because 11 is exclusive here and we have stored it in x.', 'start': 13945.873, 'duration': 4.522}, {'end': 13953.976, 'text': 'After that, I have multiplied all these values by 2.', 'start': 13950.395, 'duration': 3.581}, {'end': 13956.077, 'text': 'So 2 into x and I have stored it in y.', 'start': 13953.976, 'duration': 2.101}, {'end': 13963.12, 'text': 'So my x-axis values are ready and my y-axis values are ready.', 'start': 13959.198, 'duration': 3.922}, {'end': 13970.745, 'text': 'Then if I want to plot this, I will use the PLT.plot method and I will put x and y in the plot.', 'start': 13963.481, 'duration': 7.264}, {'end': 13976.028, 'text': 'So x will automatically go to the x-axis and y will automatically go to the y-axis.', 'start': 13970.765, 'duration': 5.263}, {'end': 13976.789, 'text': 'Then I am showing PLT.', 'start': 13976.048, 'duration': 0.741}, {'end': 13977.909, 'text': 'and this is my result.', 'start': 13976.829, 'duration': 1.08}, {'end': 13982.967, 'text': 'So I will start by loading numpy.', 'start': 13981.206, 'duration': 1.761}, {'end': 13987.429, 'text': 'So here I will write import numpy as np.', 'start': 13982.987, 'duration': 4.442}, {'end': 13990.13, 'text': 'Then I will have to import pyplot.', 'start': 13988.049, 'duration': 2.081}, {'end': 13997.113, 'text': 'From matplotlib, import pyplot as plt.', 'start': 13990.21, 'duration': 6.903}, {'end': 13999.715, 'text': 'So there is some error here.', 'start': 13998.374, 'duration': 1.341}, {'end': 14001.335, 'text': 'This is basically a spelling mistake.', 'start': 13999.735, 'duration': 1.6}, {'end': 14005.998, 'text': 'So it should be matplotlib here.', 'start': 14001.435, 'duration': 4.563}, {'end': 14008.379, 'text': 'And it should be single l, not dual.', 'start': 14006.678, 'duration': 1.701}, {'end': 14012.199, 'text': 'Right So, I have imported the PyPlot as well.', 'start': 14009.156, 'duration': 3.043}, {'end': 14014.28, 'text': 'So, first of all, I have to make a NumPy array.', 'start': 14012.219, 'duration': 2.061}, {'end': 14017.623, 'text': 'So, x is equal to np.array.', 'start': 14014.44, 'duration': 3.183}, {'end': 14023.308, 'text': 'Then, I have to use a range because I can easily make it here.', 'start': 14017.643, 'duration': 5.665}, {'end': 14026.99, 'text': 'np.arrange It will go from 1 to 11.', 'start': 14023.468, 'duration': 3.522}, {'end': 14028.992, 'text': "That's it.", 'start': 14026.99, 'duration': 2.002}, {'end': 14030.754, 'text': 'Then, I print out x.', 'start': 14029.272, 'duration': 1.482}, {'end': 14032.215, 'text': 'This is my NumPy array.', 'start': 14030.754, 'duration': 1.461}, {'end': 14035.557, 'text': 'Then, I will make another NumPy array, y.', 'start': 14032.255, 'duration': 3.302}, {'end': 14037.239, 'text': 'And y will basically be 3 times of x.', 'start': 14035.557, 'duration': 1.682}, {'end': 14043.393, 'text': "Right So, I'll print y as well.", 'start': 14041.551, 'duration': 1.842}, {'end': 14045.416, 'text': 'This is x and this is y.', 'start': 14043.413, 'duration': 2.003}, {'end': 14048.459, 'text': "So, I'll make a line plot between these two.", 'start': 14045.416, 'duration': 3.043}, {'end': 14057.057, 'text': 'So plt.plot, first I will pass x, then I will pass y.', 'start': 14051.294, 'duration': 5.763}, {'end': 14061.419, 'text': 'And if I want to show this graph, I will have to use the show method, plt.show.', 'start': 14057.057, 'duration': 4.362}, {'end': 14062.599, 'text': 'And this is my plot.', 'start': 14061.559, 'duration': 1.04}, {'end': 14071.984, 'text': 'So these are the values of my x-axis, these are the values of my y-axis, and this is the line chart between x and y.', 'start': 14063.06, 'duration': 8.924}, {'end': 14077.92, 'text': "So now let's see how we can add its x-axis label, y-axis label and title here.", 'start': 14072.892, 'duration': 5.028}, {'end': 14083.187, 'text': 'So to add title, just use plt.title, x-label for x-axis label and y-able for y-axis label.', 'start': 14077.96, 'duration': 5.227}, {'end': 14085.21, 'text': 'Use these three and these three will come here.', 'start': 14083.268, 'duration': 1.942}, {'end': 14092.689, 'text': 'Similarly, we can change the line style as well.', 'start': 14089.466, 'duration': 3.223}, {'end': 14100.755, 'text': 'So, in this plt.plot method, our main method, we have three more attributes present in it.', 'start': 14092.709, 'duration': 8.046}, {'end': 14101.896, 'text': 'One attribute is color.', 'start': 14100.775, 'duration': 1.121}, {'end': 14104.518, 'text': 'So, I am assigning color here, green.', 'start': 14102.236, 'duration': 2.282}, {'end': 14109.362, 'text': 'Right? So, as you can see, initially it was blue color, that blue color has been changed to green.', 'start': 14104.938, 'duration': 4.424}, {'end': 14111.864, 'text': 'After this, I have line style.', 'start': 14109.922, 'duration': 1.942}, {'end': 14114.846, 'text': 'So, line style was initially a single line.', 'start': 14112.204, 'duration': 2.642}, {'end': 14117.888, 'text': 'So, I need a dotted line, so here it is a colon.', 'start': 14114.966, 'duration': 2.922}, {'end': 14124.307, 'text': 'Similarly, if I want to increase or decrease the line width, I can use the line width attribute.', 'start': 14118.925, 'duration': 5.382}, {'end': 14130.529, 'text': 'And here I have set the line width to 2 and then I have shown it.', 'start': 14124.347, 'duration': 6.182}, {'end': 14133.33, 'text': "So, let's implement all these things here.", 'start': 14130.549, 'duration': 2.781}, {'end': 14135.47, 'text': 'So, I can actually do it in this thing here.', 'start': 14133.35, 'duration': 2.12}, {'end': 14143.153, 'text': 'plt.plot, plt.show Then I have to add the title here, t-i-t-l-e and I will set the title here.', 'start': 14135.771, 'duration': 7.382}, {'end': 14148.641, 'text': 'x versus y.', 'start': 14147.06, 'duration': 1.581}, {'end': 14152.404, 'text': 'Then I will give x-axis label here.', 'start': 14148.641, 'duration': 3.763}, {'end': 14157.087, 'text': 'plt.xlabel and xlabel will be here.', 'start': 14152.604, 'duration': 4.483}, {'end': 14162.991, 'text': 'This is x-axis and I will have to set y-axis as well.', 'start': 14157.808, 'duration': 5.183}, {'end': 14173.907, 'text': 'plt.ylabel and here I will write this is Y axis.', 'start': 14163.031, 'duration': 10.876}, {'end': 14176.189, 'text': 'So, I have set X axis and Y axis.', 'start': 14174.527, 'duration': 1.662}, {'end': 14181.193, 'text': 'Then in PLT.plot, X and Y came here.', 'start': 14176.549, 'duration': 4.644}, {'end': 14185.797, 'text': 'Then I will have to change line style, line width and line color.', 'start': 14181.253, 'duration': 4.544}, {'end': 14193.456, 'text': 'So, I am assigning the color as green and then I have to see the line style.', 'start': 14187.671, 'duration': 5.785}, {'end': 14197.28, 'text': 'The line style will be a colon here.', 'start': 14193.496, 'duration': 3.784}, {'end': 14200.082, 'text': 'Then I have to set the line width.', 'start': 14197.32, 'duration': 2.762}, {'end': 14202.805, 'text': 'I am giving the line width as 5.', 'start': 14200.162, 'duration': 2.643}, {'end': 14208.678, 'text': 'So, I am setting the line width as 5.', 'start': 14202.805, 'duration': 5.873}, {'end': 14217.724, 'text': 'Right So, I have added the x-axis label, y-axis label, title, and I have also changed the color, style, and width here.', 'start': 14208.678, 'duration': 9.046}, {'end': 14222.827, 'text': 'So, now we will see how we can do two lines in one plot.', 'start': 14217.744, 'duration': 5.083}, {'end': 14224.728, 'text': 'So, again, this numpy array is going from 1 to 10.', 'start': 14222.847, 'duration': 1.881}, {'end': 14227.01, 'text': 'So, after this, I am creating two more numpy arrays, y1 and y2.', 'start': 14224.728, 'duration': 2.282}, {'end': 14228.631, 'text': 'So, y1 is 2 times of x, y2 is 3 times of x.', 'start': 14227.03, 'duration': 1.601}, {'end': 14242.858, 'text': 'Then after this, I am preparing two plots here.', 'start': 14238.197, 'duration': 4.661}, {'end': 14252.3, 'text': 'So plt.plot, x will remain as x only, y1 will come in the y-axis of this plot, y2 will come in the y-axis of the other plot.', 'start': 14243.078, 'duration': 9.222}, {'end': 14255.801, 'text': 'Then the color of this plot is green and this plot is red.', 'start': 14252.36, 'duration': 3.441}, {'end': 14258.581, 'text': 'I have given line style and then I have given line width here.', 'start': 14255.821, 'duration': 2.76}, {'end': 14261.262, 'text': 'Then I am also adding its grid which is true.', 'start': 14258.621, 'duration': 2.641}, {'end': 14266.347, 'text': 'And if we implement all these codes, we will get a graph like this.', 'start': 14262.924, 'duration': 3.423}, {'end': 14272.512, 'text': 'This code may seem a bit complicated, so I will implement it in the Jupyter Notebook and show you piece by piece.', 'start': 14266.827, 'duration': 5.685}, {'end': 14276.595, 'text': 'So we have X already present.', 'start': 14272.652, 'duration': 3.943}, {'end': 14279.818, 'text': 'Then I will set Y1 here, Y1 will be 2 times of X.', 'start': 14276.635, 'duration': 3.183}, {'end': 14282.34, 'text': 'Then I will show Y2, Y2 will be 3 times of X.', 'start': 14279.818, 'duration': 2.522}, {'end': 14290.979, 'text': 'So, y1 and y2 are here.', 'start': 14288.578, 'duration': 2.401}, {'end': 14293.019, 'text': "Then, I'll make a plot.", 'start': 14291.039, 'duration': 1.98}, {'end': 14297.76, 'text': 'plt.plot The first plot will be between x and y1.', 'start': 14293.039, 'duration': 4.721}, {'end': 14301.461, 'text': 'Then, the second plot will be between x and y2.', 'start': 14297.86, 'duration': 3.601}, {'end': 14303.001, 'text': "So, I'll write plt.plot.", 'start': 14301.821, 'duration': 1.18}, {'end': 14304.621, 'text': 'Here, x will be there.', 'start': 14303.101, 'duration': 1.52}, {'end': 14305.242, 'text': 'Then, y2 will be there.', 'start': 14304.661, 'duration': 0.581}, {'end': 14313.296, 'text': 'I will show plt.', 'start': 14312.415, 'duration': 0.881}, {'end': 14315.577, 'text': 'So we have made two lines like this.', 'start': 14313.716, 'duration': 1.861}, {'end': 14316.438, 'text': "Then let's change these two.", 'start': 14315.597, 'duration': 0.841}, {'end': 14317.358, 'text': 'So y1 is done here.', 'start': 14316.478, 'duration': 0.88}, {'end': 14319.3, 'text': "Then in y1, let's assume it's color is red.", 'start': 14317.619, 'duration': 1.681}, {'end': 14321.561, 'text': 'Then its line style will be dotted.', 'start': 14320.04, 'duration': 1.521}, {'end': 14338.044, 'text': 'Then I will actually give a colon here.', 'start': 14335.603, 'duration': 2.441}, {'end': 14340.646, 'text': "Let's keep the line width as normal.", 'start': 14338.065, 'duration': 2.581}], 'summary': 'Using numpy and pyplot, two arrays are created and plotted, with various customizations, resulting in a graph with two lines', 'duration': 404.797, 'max_score': 13935.849, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13935849.jpg'}, {'end': 14224.728, 'src': 'embed', 'start': 14197.32, 'weight': 8, 'content': [{'end': 14200.082, 'text': 'Then I have to set the line width.', 'start': 14197.32, 'duration': 2.762}, {'end': 14202.805, 'text': 'I am giving the line width as 5.', 'start': 14200.162, 'duration': 2.643}, {'end': 14208.678, 'text': 'So, I am setting the line width as 5.', 'start': 14202.805, 'duration': 5.873}, {'end': 14217.724, 'text': 'Right So, I have added the x-axis label, y-axis label, title, and I have also changed the color, style, and width here.', 'start': 14208.678, 'duration': 9.046}, {'end': 14222.827, 'text': 'So, now we will see how we can do two lines in one plot.', 'start': 14217.744, 'duration': 5.083}, {'end': 14224.728, 'text': 'So, again, this numpy array is going from 1 to 10.', 'start': 14222.847, 'duration': 1.881}], 'summary': 'Setting line width as 5 and adding labels, title, color, style, and width. demonstrating two lines in one plot using a numpy array from 1 to 10.', 'duration': 27.408, 'max_score': 14197.32, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts14197320.jpg'}, {'end': 14617.214, 'src': 'embed', 'start': 14586.578, 'weight': 1, 'content': [{'end': 14589.679, 'text': "So this was our line plot, now let's see how we can work with a bar plot.", 'start': 14586.578, 'duration': 3.101}, {'end': 14597.401, 'text': 'So we normally see a bar plot when we have to understand the distribution of a categorical value.', 'start': 14589.839, 'duration': 7.562}, {'end': 14603.303, 'text': 'So as we are making a dictionary here, so in this dictionary we have three key values.', 'start': 14597.942, 'duration': 5.361}, {'end': 14606.884, 'text': "So let's assume these are names and these are their marks.", 'start': 14603.343, 'duration': 3.541}, {'end': 14611.226, 'text': 'So Bob, Matt and Sam and their corresponding marks are present here.', 'start': 14606.904, 'duration': 4.322}, {'end': 14617.214, 'text': 'So, I have extracted the keys and stored them in the form of a list in names.', 'start': 14611.826, 'duration': 5.388}], 'summary': 'Introducing bar plots to understand distribution of categorical values with a dictionary containing three key-value pairs.', 'duration': 30.636, 'max_score': 14586.578, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts14586578.jpg'}, {'end': 14744.071, 'src': 'embed', 'start': 14710.538, 'weight': 2, 'content': [{'end': 14714.841, 'text': 'Similarly, I will extract the marks of the students.', 'start': 14710.538, 'duration': 4.303}, {'end': 14722.768, 'text': 'So, in values, list of, this will be student.values.', 'start': 14714.962, 'duration': 7.806}, {'end': 14729.634, 'text': 'So, I have extracted the values and I am printing the values here.', 'start': 14724.549, 'duration': 5.085}, {'end': 14731.695, 'text': 'So, all these are the marks of these four.', 'start': 14729.654, 'duration': 2.041}, {'end': 14737.405, 'text': 'So I have to make a bar plot here, plt.bar.', 'start': 14733.902, 'duration': 3.503}, {'end': 14744.071, 'text': 'First of all, I will give a name, after that I will give their marks which are present in the values.', 'start': 14737.605, 'duration': 6.466}], 'summary': 'Extracted marks of students for bar plot.', 'duration': 33.533, 'max_score': 14710.538, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts14710538.jpg'}, {'end': 14871.63, 'src': 'embed', 'start': 14841.042, 'weight': 3, 'content': [{'end': 14843.383, 'text': "So let's add the same changes here.", 'start': 14841.042, 'duration': 2.341}, {'end': 14845.104, 'text': 'So it will be plt.barh.', 'start': 14843.423, 'duration': 1.681}, {'end': 14846.604, 'text': 'And here I will add color.', 'start': 14845.224, 'duration': 1.38}, {'end': 14848.065, 'text': 'I like green a lot.', 'start': 14846.624, 'duration': 1.441}, {'end': 14856.201, 'text': 'Right? So initially it was vertical, now it is horizontal.', 'start': 14853.479, 'duration': 2.722}, {'end': 14858.082, 'text': 'And I have set the color here.', 'start': 14856.281, 'duration': 1.801}, {'end': 14861.384, 'text': 'So now we will work with scatterplot.', 'start': 14858.122, 'duration': 3.262}, {'end': 14864.526, 'text': 'So scatterplot is normally just points here.', 'start': 14861.864, 'duration': 2.662}, {'end': 14867.528, 'text': 'So there will be some points on x-axis and some points on y-axis.', 'start': 14864.546, 'duration': 2.982}, {'end': 14871.63, 'text': 'And whatever will be their intersection, there we will get a point here.', 'start': 14867.588, 'duration': 4.042}], 'summary': 'Demonstrating changes from vertical to horizontal bar using matplotlib.', 'duration': 30.588, 'max_score': 14841.042, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts14841042.jpg'}, {'end': 15015.674, 'src': 'embed', 'start': 14986.282, 'weight': 4, 'content': [{'end': 14991.563, 'text': 'And the color here, I will use the C attribute, initially it was blue, I made it green from blue.', 'start': 14986.282, 'duration': 5.281}, {'end': 14994.243, 'text': 'Then I increased the size, I made the size 100 here.', 'start': 14991.943, 'duration': 2.3}, {'end': 14997.244, 'text': "So let's apply all those things here.", 'start': 14994.303, 'duration': 2.941}, {'end': 15001.945, 'text': 'First of all, I will change the marker style and I need a star here.', 'start': 14997.344, 'duration': 4.601}, {'end': 15012.913, 'text': 'Then I will set the color, I need red color, then I will set the size which I I will set 10 here.', 'start': 15002.165, 'duration': 10.748}, {'end': 15015.674, 'text': 'So, I think there is some error here.', 'start': 15012.933, 'duration': 2.741}], 'summary': 'Changed color attribute from blue to green and increased size to 100, then adjusted marker style to star, set color to red, and size to 10, encountering an error.', 'duration': 29.392, 'max_score': 14986.282, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts14986282.jpg'}, {'end': 15436.436, 'src': 'heatmap', 'start': 15055.536, 'weight': 0.938, 'content': [{'end': 15062.142, 'text': 'So this will be a scatterplot between X and A and this will be another scatterplot between X and B.', 'start': 15055.536, 'duration': 6.606}, {'end': 15066.306, 'text': 'And here change the aesthetics a little so that you can differentiate between both of them.', 'start': 15062.142, 'duration': 4.164}, {'end': 15069.435, 'text': 'So, my X and Y are ready.', 'start': 15066.974, 'duration': 2.461}, {'end': 15073.816, 'text': "So, I'll make a Z and randomly give 10 values here.", 'start': 15069.655, 'duration': 4.161}, {'end': 15083.96, 'text': "Right So, I've randomly given 10 values here.", 'start': 15081.079, 'duration': 2.881}, {'end': 15088.822, 'text': 'So, this is my first scatterplot which was between X and Y.', 'start': 15084, 'duration': 4.822}, {'end': 15092.483, 'text': "So, I'll give another scatterplot here which will be between X and Z.", 'start': 15088.822, 'duration': 3.661}, {'end': 15099.7, 'text': 'And its marker style will be normal here.', 'start': 15096.056, 'duration': 3.644}, {'end': 15104.925, 'text': 'And then we give color as green and set its size as 200.', 'start': 15101.061, 'duration': 3.864}, {'end': 15107.187, 'text': 'Right? So we have added two markers in one plot.', 'start': 15104.925, 'duration': 2.262}, {'end': 15116.461, 'text': 'So now it adds its subplots.', 'start': 15115.06, 'duration': 1.401}, {'end': 15120.404, 'text': 'So again the same thing, we have x, a and b.', 'start': 15116.481, 'duration': 3.923}, {'end': 15123.566, 'text': 'So instead of directly using scatter, we will use the subplot method.', 'start': 15120.404, 'duration': 3.162}, {'end': 15126.809, 'text': 'Here again we are arranging it in two columns.', 'start': 15123.586, 'duration': 3.223}, {'end': 15128.529, 'text': 'So 1, 2, 1 and again 1, 2, 2.', 'start': 15127.029, 'duration': 1.5}, {'end': 15134.114, 'text': 'So the first subplot is between x and a and the second subplot is between x and b.', 'start': 15128.53, 'duration': 5.584}, {'end': 15141.93, 'text': 'So I write plt.subplot here.', 'start': 15138.067, 'duration': 3.863}, {'end': 15147.495, 'text': 'So this will be 1, 2 and then it will be between 1.', 'start': 15141.99, 'duration': 5.505}, {'end': 15149.597, 'text': 'Then I have to copy it here.', 'start': 15147.495, 'duration': 2.102}, {'end': 15152.579, 'text': 'I copy it and paste it here.', 'start': 15149.757, 'duration': 2.822}, {'end': 15157.502, 'text': 'Then I will make another subplot, plt.subplot.', 'start': 15154.861, 'duration': 2.641}, {'end': 15160.38, 'text': 'This will be 1, 2, 2.', 'start': 15157.882, 'duration': 2.498}, {'end': 15164.323, 'text': 'Means it will come in the second column.', 'start': 15160.382, 'duration': 3.941}, {'end': 15169.584, 'text': 'Again I will copy it and I will paste it here.', 'start': 15164.383, 'duration': 5.201}, {'end': 15171.564, 'text': 'Then I will have to print it.', 'start': 15169.624, 'duration': 1.94}, {'end': 15175.505, 'text': 'So I just have to write plt.show here.', 'start': 15171.784, 'duration': 3.721}, {'end': 15178.506, 'text': 'And I have made the subplot.', 'start': 15175.625, 'duration': 2.881}, {'end': 15182.468, 'text': "So that was Scatterplot, now let's see how we can work with Histogram.", 'start': 15179.926, 'duration': 2.542}, {'end': 15187.012, 'text': "So first let's understand the difference between Histogram and Bar Chart.", 'start': 15182.508, 'duration': 4.504}, {'end': 15191.436, 'text': 'So we can normally use Bar Chart for categorical values.', 'start': 15187.032, 'duration': 4.404}, {'end': 15196.621, 'text': 'And when it comes to Histogram, we can use Histogram for numerical values.', 'start': 15191.536, 'duration': 5.085}, {'end': 15204.829, 'text': 'So here I have taken a random distribution, a random list which has these numbers, and if I want to make a histogram,', 'start': 15198.362, 'duration': 6.467}, {'end': 15209.855, 'text': 'then just do plt.hist and pass this data, and this is my histogram.', 'start': 15204.829, 'duration': 5.026}, {'end': 15213.478, 'text': 'And here we are changing the colors.', 'start': 15211.616, 'duration': 1.862}, {'end': 15215.66, 'text': 'Initially it was blue and now it is green.', 'start': 15213.818, 'duration': 1.842}, {'end': 15218.843, 'text': 'So here you can see that there are a lot of bins.', 'start': 15215.7, 'duration': 3.143}, {'end': 15223.628, 'text': 'And if I want to reduce the number of bins, then I am doing bins as equal to 4.', 'start': 15218.923, 'duration': 4.705}, {'end': 15227.792, 'text': 'So by using the bins attribute, you can change the number of bins.', 'start': 15223.628, 'duration': 4.164}, {'end': 15232.416, 'text': 'So first of all, I will make a list of values here.', 'start': 15227.812, 'duration': 4.604}, {'end': 15234.478, 'text': 'I will write some random values.', 'start': 15232.476, 'duration': 2.002}, {'end': 15245.884, 'text': 'Right, so my data is ready now.', 'start': 15243.942, 'duration': 1.942}, {'end': 15248.786, 'text': 'After this, I just have to make a histogram.', 'start': 15245.924, 'duration': 2.862}, {'end': 15255.792, 'text': 'So, I will write plt.hist and I will pass the data in it.', 'start': 15248.806, 'duration': 6.986}, {'end': 15258.875, 'text': 'After this, I have to show it.', 'start': 15255.892, 'duration': 2.983}, {'end': 15263.258, 'text': 'So, I will write plt.show and this is my histogram.', 'start': 15259.095, 'duration': 4.163}, {'end': 15266.621, 'text': 'So, it is telling me that the maximum frequency is 2 and 6.', 'start': 15263.278, 'duration': 3.343}, {'end': 15268.903, 'text': "So, let's see how many times 2 is coming.", 'start': 15266.621, 'duration': 2.282}, {'end': 15271.683, 'text': '1, 2, 3.', 'start': 15268.923, 'duration': 2.76}, {'end': 15275.807, 'text': "4, 2 is 4 times, now let's see how many times 6 is coming, 1, 2, 3 and 4.", 'start': 15271.685, 'duration': 4.122}, {'end': 15279.389, 'text': '6 is also coming 4 times, 2 is also coming 4 times, right.', 'start': 15275.807, 'duration': 3.582}, {'end': 15285.173, 'text': 'Here, if you see here, it is telling the frequency and this is the value.', 'start': 15279.77, 'duration': 5.403}, {'end': 15287.134, 'text': "So, now let's change its color.", 'start': 15285.913, 'duration': 1.221}, {'end': 15290.315, 'text': "So, here I am setting the color, let's assume red.", 'start': 15287.194, 'duration': 3.121}, {'end': 15291.516, 'text': 'So, it should actually be R.', 'start': 15290.395, 'duration': 1.121}, {'end': 15301.464, 'text': 'And we should actually have a comma here.', 'start': 15299.222, 'duration': 2.242}, {'end': 15305.748, 'text': "I'll write it as COLOR.", 'start': 15301.484, 'duration': 4.264}, {'end': 15309.071, 'text': 'Right So, this is how we changed the color.', 'start': 15305.788, 'duration': 3.283}, {'end': 15311.973, 'text': "So, if I want to reduce the number of bins, let's say I make it 3.", 'start': 15309.091, 'duration': 2.882}, {'end': 15314.035, 'text': 'Right So, the number of bins is reduced here.', 'start': 15311.973, 'duration': 2.062}, {'end': 15323.712, 'text': "So now if we want to make a histogram on a data set, let's see how we can do it.", 'start': 15318.49, 'duration': 5.222}, {'end': 15325.653, 'text': 'So we will use the iris data frame again.', 'start': 15323.732, 'duration': 1.921}, {'end': 15327.074, 'text': 'So we have loaded the iris data frame.', 'start': 15325.673, 'duration': 1.401}, {'end': 15330.475, 'text': 'After that, I am making a histogram on the sepal length column.', 'start': 15327.154, 'duration': 3.321}, {'end': 15333.936, 'text': 'So just use the plt.hist method.', 'start': 15330.495, 'duration': 3.441}, {'end': 15340.279, 'text': 'After that, the first parameter in it, in the first parameter, you pass the sepal length column.', 'start': 15334.037, 'duration': 6.242}, {'end': 15343.34, 'text': 'Then set the number of pins and set the color.', 'start': 15340.479, 'duration': 2.861}, {'end': 15345.581, 'text': 'And here short the plt, you will get the result.', 'start': 15343.42, 'duration': 2.161}, {'end': 15351.779, 'text': 'We have already loaded the iris, so let me show you again.', 'start': 15347.777, 'duration': 4.002}, {'end': 15363.584, 'text': 'This is the iris data frame, so if I want to make a petal length histogram here, then I will write plt.hist iris.', 'start': 15351.819, 'duration': 11.765}, {'end': 15368.526, 'text': 'Then I need a petal length histogram here, so I will write petal.length.', 'start': 15364.064, 'duration': 4.462}, {'end': 15369.407, 'text': 'Then this is done.', 'start': 15368.566, 'duration': 0.841}, {'end': 15374.429, 'text': 'After this, I will have to set the color, so I will set the color to green.', 'start': 15369.427, 'duration': 5.002}, {'end': 15381.843, 'text': 'Right So here I will do plt.show again.', 'start': 15378.641, 'duration': 3.202}, {'end': 15388.728, 'text': 'plt.show and we have made this as a histogram for the petal length column.', 'start': 15381.863, 'duration': 6.865}, {'end': 15391.83, 'text': 'So now we will work with boxplot.', 'start': 15388.748, 'duration': 3.082}, {'end': 15400.655, 'text': 'So boxplot normally gives you 25 percentile, 50 percentile and 75 percentile or it is called phi number summary.', 'start': 15392.31, 'duration': 8.345}, {'end': 15411.001, 'text': 'So, this is the minimum value, this is the 25% value, this is the median value, this is the 75% value and this is the maximum value.', 'start': 15401.656, 'duration': 9.345}, {'end': 15416.663, 'text': 'So, we call this as Phi Number Summary and if we want to see the Phi Number Summary pictorially then we can use Box Plot.', 'start': 15411.601, 'duration': 5.062}, {'end': 15419.645, 'text': 'So I will repeat it again this is the minimum value, this is the 25% value, this is the 50% value,', 'start': 15416.683, 'duration': 2.962}, {'end': 15421.626, 'text': 'this is the 75% value and this is the maximum value.', 'start': 15419.645, 'duration': 1.981}, {'end': 15436.436, 'text': 'So if I want 3 BoxPlots, then I am making 3 lists here and again I am storing it in the data by doing list of lists.', 'start': 15428.669, 'duration': 7.767}], 'summary': "Demonstrating scatterplots, histograms, and boxplots with python's matplotlib library.", 'duration': 380.9, 'max_score': 15055.536, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts15055536.jpg'}, {'end': 15209.855, 'src': 'embed', 'start': 15182.508, 'weight': 5, 'content': [{'end': 15187.012, 'text': "So first let's understand the difference between Histogram and Bar Chart.", 'start': 15182.508, 'duration': 4.504}, {'end': 15191.436, 'text': 'So we can normally use Bar Chart for categorical values.', 'start': 15187.032, 'duration': 4.404}, {'end': 15196.621, 'text': 'And when it comes to Histogram, we can use Histogram for numerical values.', 'start': 15191.536, 'duration': 5.085}, {'end': 15204.829, 'text': 'So here I have taken a random distribution, a random list which has these numbers, and if I want to make a histogram,', 'start': 15198.362, 'duration': 6.467}, {'end': 15209.855, 'text': 'then just do plt.hist and pass this data, and this is my histogram.', 'start': 15204.829, 'duration': 5.026}], 'summary': 'Histogram for numerical data, bar chart for categorical data.', 'duration': 27.347, 'max_score': 15182.508, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts15182508.jpg'}, {'end': 15932.172, 'src': 'embed', 'start': 15900.542, 'weight': 0, 'content': [{'end': 15903.263, 'text': 'I can give any random value here.', 'start': 15900.542, 'duration': 2.721}, {'end': 15903.743, 'text': 'This will be 100.', 'start': 15903.283, 'duration': 0.46}, {'end': 15906.824, 'text': 'After this, I will have to set its radius.', 'start': 15903.743, 'duration': 3.081}, {'end': 15908.724, 'text': 'So, I will set its radius as 2.', 'start': 15906.844, 'duration': 1.88}, {'end': 15912.966, 'text': 'So, I will have to set the radius of the outer one as well.', 'start': 15908.724, 'duration': 4.242}, {'end': 15919.467, 'text': 'So, I will set the radius of the outer one I will set it to 4.', 'start': 15912.986, 'duration': 6.481}, {'end': 15922.428, 'text': 'So, we have created 2 pie charts like this.', 'start': 15919.467, 'duration': 2.961}, {'end': 15924.249, 'text': 'And this is our donut chart.', 'start': 15923.109, 'duration': 1.14}, {'end': 15926.73, 'text': 'I have to give it a color as well.', 'start': 15924.349, 'duration': 2.381}, {'end': 15932.172, 'text': 'Actually, I will write 2 and 1 so that the size becomes smaller.', 'start': 15926.87, 'duration': 5.302}], 'summary': 'Created 2 pie charts and a donut chart with radius 2 and 4.', 'duration': 31.63, 'max_score': 15900.542, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts15900542.jpg'}], 'start': 13838.707, 'title': 'Visualization techniques in python', 'summary': 'Covers operations with pandas and data visualization with matplotlib, numpy, and matplotlib, including sorting data, creating line plots, customizing plot attributes, working with bar plots, scatter plots, aesthetics of scatterplot and histogram, and creating histograms, box plots, violin plots, pie charts, and donut charts with detailed steps and visual representations.', 'chapters': [{'end': 13909.333, 'start': 13838.707, 'title': 'Data visualization with matplotlib', 'summary': 'Introduces operations with pandas and data visualization with the matplotlib library. it demonstrates sorting data using pandas and creating various types of charts with matplotlib, such as lineplot, barplot, scatterplot, and histogram.', 'duration': 70.626, 'highlights': ['The chapter demonstrates sorting the entire data frame with respect to the PetalWidth column using Pandas.', 'It introduces the process of creating various types of charts with Matplotlib, such as lineplot, barplot, scatterplot, and histogram.', 'It explains the concept of a lineplot and its use in depicting the linear relationship between x and y values.']}, {'end': 14585.512, 'start': 13909.893, 'title': 'Data visualization with numpy and matplotlib', 'summary': 'Demonstrates the process of creating line plots, customizing plot attributes, adding multiple lines and subplots in a single graph using numpy and matplotlib, with an emphasis on code implementation.', 'duration': 675.619, 'highlights': ['The chapter demonstrates how to create line plots using NumPy and Matplotlib, with x-axis values ranging from 1 to 10 and corresponding y-axis values.', 'The speaker shows how to customize plot attributes such as color, line style, and line width using the plt.plot method.', 'The chapter illustrates the process of adding multiple lines to a single plot and customizing their attributes, including color, line style, and line width.', 'The chapter explains the concept of subplots and demonstrates the creation of multiple plots within one screen space using the plt.subplot method.']}, {'end': 14955.394, 'start': 14586.578, 'title': 'Working with bar and scatter plots', 'summary': 'Demonstrates creating bar plots to understand the distribution of categorical values using student marks data and then explains the process of creating scatter plots with randomly generated data.', 'duration': 368.816, 'highlights': ['Explaining the process of creating bar plots using student marks data and displaying the distribution of marks for each student.', 'Demonstrating the process of adding a title, x-axis label, y-axis label, and grid to the bar plot for improved visualization.', 'Explaining the process of creating horizontal bar charts and setting the color of the bars.', 'Demonstrating the process of creating scatter plots with randomly generated data and explaining the concept of points on the x-axis and y-axis intersection.']}, {'end': 15309.071, 'start': 14964.818, 'title': 'Aesthetics of scatterplot and histogram', 'summary': 'Demonstrates how to change the aesthetics of a scatterplot by altering marker style, color, and size, and also showcases the creation of subplots and a histogram with modified colors and bin values.', 'duration': 344.253, 'highlights': ['The chapter demonstrates how to change the aesthetics of a scatterplot by altering marker style, color, and size.', 'The chapter also showcases the creation of subplots and a histogram with modified colors and bin values.']}, {'end': 15926.73, 'start': 15309.091, 'title': 'Visualization techniques in python', 'summary': 'Covers creating histograms, box plots, violin plots, pie charts, and donut charts using numerical and categorical data with detailed steps and visual representations.', 'duration': 617.639, 'highlights': ['Explaining the process of creating histograms and showing the result for sepal length and petal length columns using the iris data frame.', 'Illustrating the use of boxplot to display the 5-number summary and creating 3 boxplots with different median values.', 'Demonstrating the difference between boxplot and violin plot and setting the showMedians attribute to true for indicating the median in violin plot.', 'Creating a pie chart to visualize the distribution of different categorical values, including the quantity of fruits and indicating the percentage distribution using the auto-pct attribute.', 'Creating a donut chart with an outer and inner circle, setting different radii, and explaining the difference between a pie chart and a donut chart.']}], 'duration': 2088.023, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts13838707.jpg', 'highlights': ['Covers operations with pandas and data visualization with matplotlib, numpy, and matplotlib', 'Explaining the process of creating histograms and showing the result for sepal length and petal length columns using the iris data frame', 'Illustrating the use of boxplot to display the 5-number summary and creating 3 boxplots with different median values', 'Demonstrating the difference between boxplot and violin plot and setting the showMedians attribute to true for indicating the median in violin plot', 'Creating a pie chart to visualize the distribution of different categorical values, including the quantity of fruits and indicating the percentage distribution using the auto-pct attribute', 'Creating a donut chart with an outer and inner circle, setting different radii, and explaining the difference between a pie chart and a donut chart', 'The chapter demonstrates sorting the entire data frame with respect to the PetalWidth column using Pandas', 'The chapter demonstrates how to create line plots using NumPy and Matplotlib, with x-axis values ranging from 1 to 10 and corresponding y-axis values', 'The chapter demonstrates how to change the aesthetics of a scatterplot by altering marker style, color, and size', 'Explaining the process of creating bar plots using student marks data and displaying the distribution of marks for each student']}, {'end': 17112.317, 'segs': [{'end': 16043.102, 'src': 'embed', 'start': 16018.105, 'weight': 2, 'content': [{'end': 16025.37, 'text': 'So I am loading it and after loading it I will store it in a new object and I will give the name of that object as fmri.', 'start': 16018.105, 'duration': 7.265}, {'end': 16031.634, 'text': 'Then after this I will want to see the first 5 records of this fmri dataset.', 'start': 16025.39, 'duration': 6.244}, {'end': 16038.279, 'text': 'So here I will write fmri.head And here you can see that I can see all these columns.', 'start': 16031.674, 'duration': 6.605}, {'end': 16043.102, 'text': 'So in this there is subject column, time point, event, region and signal.', 'start': 16038.559, 'duration': 4.543}], 'summary': 'Loading and storing fmri dataset with 5 records and columns', 'duration': 24.997, 'max_score': 16018.105, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16018105.jpg'}, {'end': 16218.643, 'src': 'embed', 'start': 16185.675, 'weight': 6, 'content': [{'end': 16190.178, 'text': 'And what is the name of the data set? fmri.', 'start': 16185.675, 'duration': 4.503}, {'end': 16194.541, 'text': 'And I will store this in fmri object.', 'start': 16190.799, 'duration': 3.742}, {'end': 16196.582, 'text': 'So I have loaded this.', 'start': 16195.542, 'duration': 1.04}, {'end': 16197.943, 'text': 'Then now we will see.', 'start': 16196.602, 'duration': 1.341}, {'end': 16208.819, 'text': 'What are the columns in it? fmri.head And I have subject column, time point, event, region and signal.', 'start': 16199.534, 'duration': 9.285}, {'end': 16216.002, 'text': 'So if I want to see how many rows and columns are there, I use fmri.shape once.', 'start': 16209.399, 'duration': 6.603}, {'end': 16218.643, 'text': 'And it tells me that there are 1064 rows in this data set.', 'start': 16216.022, 'duration': 2.621}], 'summary': 'The fmri dataset contains 1064 rows and 5 columns.', 'duration': 32.968, 'max_score': 16185.675, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16185675.jpg'}, {'end': 16286.55, 'src': 'embed', 'start': 16257.099, 'weight': 1, 'content': [{'end': 16263.624, 'text': 'So, I will write y is equal to signal and these two columns are coming from fMRI data.', 'start': 16257.099, 'duration': 6.525}, {'end': 16267.247, 'text': 'So, here I will set data is equal to fMRI.', 'start': 16263.644, 'duration': 3.603}, {'end': 16269.608, 'text': 'Then finally, I will write plt.show.', 'start': 16267.787, 'duration': 1.821}, {'end': 16276.059, 'text': 'And when I click on run, my result will come.', 'start': 16272.896, 'duration': 3.163}, {'end': 16282.046, 'text': 'And you can see here that my beautiful line plot has been created.', 'start': 16276.119, 'duration': 5.927}, {'end': 16286.55, 'text': 'So you can see that this is an interesting parameter of line plot.', 'start': 16282.066, 'duration': 4.484}], 'summary': 'Creating a line plot from fmri data using python resulted in a visually appealing plot.', 'duration': 29.451, 'max_score': 16257.099, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16257099.jpg'}, {'end': 16403.365, 'src': 'embed', 'start': 16371.891, 'weight': 0, 'content': [{'end': 16376.093, 'text': 'And I am seeing that the color of this line will determine the event column.', 'start': 16371.891, 'duration': 4.202}, {'end': 16378.714, 'text': 'And because there are two categories in the event column.', 'start': 16376.113, 'duration': 2.601}, {'end': 16379.394, 'text': 'Stim and queue.', 'start': 16378.734, 'duration': 0.66}, {'end': 16391.438, 'text': 'And you can see that the blue line is representing the stem event and the orange line is representing the Q event.', 'start': 16382.855, 'duration': 8.583}, {'end': 16394.841, 'text': 'And here you can see a very interesting thing.', 'start': 16391.579, 'duration': 3.262}, {'end': 16403.365, 'text': 'So here the blue line that we saw last time is raising from 0 to 5 and then decreasing from 5 to 10 and then stabilizing.', 'start': 16394.861, 'duration': 8.504}], 'summary': 'Blue line represents stem event, raising from 0 to 5 and decreasing from 5 to 10.', 'duration': 31.474, 'max_score': 16371.891, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16371891.jpg'}, {'end': 16709.067, 'src': 'embed', 'start': 16682.05, 'weight': 5, 'content': [{'end': 16686.091, 'text': 'I am giving the name of the file in it, which is pokemon.csv.', 'start': 16682.05, 'duration': 4.041}, {'end': 16689.533, 'text': 'Then I am storing my result in the Pokemon object.', 'start': 16686.651, 'duration': 2.882}, {'end': 16694.837, 'text': 'Then in this Pokemon data frame, I have these two columns.', 'start': 16689.953, 'duration': 4.884}, {'end': 16697.719, 'text': 'Actually, there are many columns.', 'start': 16695.276, 'duration': 2.443}, {'end': 16701.822, 'text': 'From those many columns, I want to make a bar plot between these two columns.', 'start': 16697.778, 'duration': 4.044}, {'end': 16709.067, 'text': 'So, this legendary column is telling you whether Pokemon is legendary or not.', 'start': 16702.522, 'duration': 6.545}], 'summary': 'Analyzing pokemon.csv to create a bar plot comparing legendary and non-legendary pokemon.', 'duration': 27.017, 'max_score': 16682.05, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16682050.jpg'}, {'end': 16911.855, 'src': 'embed', 'start': 16881.395, 'weight': 3, 'content': [{'end': 16883.856, 'text': 'Actually, we have nothing to do with all of them.', 'start': 16881.395, 'duration': 2.461}, {'end': 16885.597, 'text': 'We just have to pay attention to two columns.', 'start': 16883.876, 'duration': 1.721}, {'end': 16889.619, 'text': 'One is your Speed column and the other is this Legendary column.', 'start': 16885.697, 'duration': 3.922}, {'end': 16892.821, 'text': 'Speed will obviously tell you the speed of the Pokemon.', 'start': 16890.459, 'duration': 2.362}, {'end': 16898.045, 'text': 'This Legendary, as I told you, you will know whether the Pokemon is Legendary or not.', 'start': 16893.001, 'duration': 5.044}, {'end': 16901.467, 'text': 'If it is 0, it means that the Pokemon is not Legendary.', 'start': 16898.525, 'duration': 2.942}, {'end': 16905.01, 'text': 'If it is 1, it means that the Pokemon is Legendary.', 'start': 16901.567, 'duration': 3.443}, {'end': 16907.131, 'text': "So now let's make a bar plot.", 'start': 16905.15, 'duration': 1.981}, {'end': 16911.855, 'text': 'So for the bar plot, obviously we will have to write sns.barplot.', 'start': 16907.171, 'duration': 4.684}], 'summary': 'Analyze pokemon data using speed and legendary columns to create a bar plot.', 'duration': 30.46, 'max_score': 16881.395, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts16881395.jpg'}, {'end': 17056.071, 'src': 'embed', 'start': 17027.851, 'weight': 4, 'content': [{'end': 17029.752, 'text': "Non-Legendary Pokemon don't have that much weight.", 'start': 17027.851, 'duration': 1.901}, {'end': 17034.315, 'text': 'After this, I am again making a bar plot between Legendary and Speed.', 'start': 17029.772, 'duration': 4.543}, {'end': 17038.838, 'text': 'But here I am doing something interesting.', 'start': 17034.355, 'duration': 4.483}, {'end': 17045.242, 'text': 'What we saw with the line plot, when we were mapping a column on the hue.', 'start': 17038.878, 'duration': 6.364}, {'end': 17048.424, 'text': 'Similarly, we have a generation column.', 'start': 17045.262, 'duration': 3.162}, {'end': 17050.906, 'text': 'You have 7 generations of Pokemon.', 'start': 17049.344, 'duration': 1.562}, {'end': 17056.071, 'text': 'I want to represent these 7 generations with different colors.', 'start': 17050.926, 'duration': 5.145}], 'summary': 'Non-legendary pokemon have less weight; 7 generations represented with different colors.', 'duration': 28.22, 'max_score': 17027.851, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts17027851.jpg'}], 'start': 15926.87, 'title': 'Data visualization with seaborn and matplotlib', 'summary': 'Introduces the seaborn library for data visualization, demonstrating the creation of a donut chart and loading and visualizing an inbuilt fmri dataset, along with identifying key columns and creating a line plot to analyze the data. it also demonstrates the implementation of line plots, bar plots, and various parameters using seaborn and matplotlib, including loading and visualizing a dataset, creating line plots with hue, style, and markers, and making a bar plot to compare the speed of legendary and non-legendary pokemon. additionally, it explores a python script for analyzing pokemon data, including loading a dataset, extracting specific columns, and creating bar plots to compare the speed and weight of legendary and non-legendary pokemon, revealing that legendary pokemon have higher speed and weight than non-legendary pokemon.', 'chapters': [{'end': 16120.025, 'start': 15926.87, 'title': 'Seaborn library for data visualization', 'summary': 'Introduces the seaborn library for data visualization, demonstrating the creation of a donut chart and loading and visualizing an inbuilt fmri dataset, along with identifying key columns and creating a line plot to analyze the data.', 'duration': 193.155, 'highlights': ['Introduction to Seaborn library and creation of a donut chart', 'Importing Seaborn library and loading inbuilt fMRI dataset', 'Creating a line plot to analyze fMRI dataset']}, {'end': 16798.247, 'start': 16120.025, 'title': 'Data analysis with seaborn and matplotlib', 'summary': 'Demonstrates the implementation of line plots, bar plots, and various parameters using seaborn and matplotlib. it includes loading and visualizing a dataset, creating line plots with hue, style, and markers, and making a bar plot to compare the speed of legendary and non-legendary pokemon.', 'duration': 678.222, 'highlights': ['The chapter demonstrates the implementation of line plots using Seaborn and Matplotlib, including loading and visualizing a dataset, creating line plots with hue, style, and markers, and making a bar plot to compare the speed of legendary and non-legendary Pokemon.', 'The speed of Legendary Pokemon is much higher than that of Non-Legendary Pokemon, with the maximum speed of a Non-Legendary Pokemon around 62 or 63, while Legendary Pokemon can have a speed of more than 100.', 'The interesting features of Seaborn include automatic labeling, additional features, and easier syntax in comparison with Matplotlib.']}, {'end': 17112.317, 'start': 16800.595, 'title': 'Pokemon data analysis', 'summary': 'Explores a python script for analyzing pokemon data, including loading a dataset, extracting specific columns, and creating bar plots to compare the speed and weight of legendary and non-legendary pokemon, revealing that legendary pokemon have higher speed and weight than non-legendary pokemon.', 'duration': 311.722, 'highlights': ['Legendary Pokemon have higher speed than non-legendary Pokemon.', 'Legendary Pokemon have higher weight than non-legendary Pokemon.', 'Speed comparison across generations reveals the highest speed in the 5th generation Legendary Pokemon.']}], 'duration': 1185.447, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts15926870.jpg', 'highlights': ['Legendary Pokemon have higher speed than non-legendary Pokemon.', 'Legendary Pokemon have higher weight than non-legendary Pokemon.', 'The speed of Legendary Pokemon is much higher than that of Non-Legendary Pokemon, with the maximum speed of a Non-Legendary Pokemon around 62 or 63, while Legendary Pokemon can have a speed of more than 100.', 'Introduction to Seaborn library and creation of a donut chart', 'Importing Seaborn library and loading inbuilt fMRI dataset', 'Creating a line plot to analyze fMRI dataset', 'The chapter demonstrates the implementation of line plots using Seaborn and Matplotlib, including loading and visualizing a dataset, creating line plots with hue, style, and markers, and making a bar plot to compare the speed of legendary and non-legendary Pokemon.', 'Speed comparison across generations reveals the highest speed in the 5th generation Legendary Pokemon.', 'The interesting features of Seaborn include automatic labeling, additional features, and easier syntax in comparison with Matplotlib.']}, {'end': 19317.719, 'segs': [{'end': 17469.62, 'src': 'embed', 'start': 17431.357, 'weight': 3, 'content': [{'end': 17435.399, 'text': 'Now after this I have to make a simple scatter plot.', 'start': 17431.357, 'duration': 4.042}, {'end': 17446.084, 'text': 'So here I will write sns.scatterplot On x I am mapping sepal length.', 'start': 17435.439, 'duration': 10.645}, {'end': 17449.366, 'text': 'On x I will write sepal length.', 'start': 17446.184, 'duration': 3.182}, {'end': 17453.528, 'text': 'Then on y axis I am mapping petal length.', 'start': 17450.326, 'duration': 3.202}, {'end': 17458.07, 'text': 'Here I will write petal length and these two columns.', 'start': 17453.548, 'duration': 4.522}, {'end': 17461.234, 'text': 'It is coming from iris dataset.', 'start': 17459.733, 'duration': 1.501}, {'end': 17462.555, 'text': 'So here I will write iris.', 'start': 17461.234, 'duration': 1.321}, {'end': 17469.62, 'text': 'Then after this I will have to write iris plt.show, Not ilt.show.', 'start': 17462.555, 'duration': 7.065}], 'summary': 'Creating a scatter plot with sepal and petal length from the iris dataset.', 'duration': 38.263, 'max_score': 17431.357, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts17431357.jpg'}, {'end': 17781.095, 'src': 'embed', 'start': 17753.367, 'weight': 4, 'content': [{'end': 17757.968, 'text': 'Inside this, I will first give the name of the data frame, which will be diamonds.', 'start': 17753.367, 'duration': 4.601}, {'end': 17761.749, 'text': 'Then in parentheses, I will give the name of the column, which is price.', 'start': 17758.328, 'duration': 3.421}, {'end': 17765.255, 'text': 'In this way, I am getting the distribution of the price of diamonds.', 'start': 17762.449, 'duration': 2.806}, {'end': 17772.75, 'text': 'And this price is in thousands of dollars.', 'start': 17769.088, 'duration': 3.662}, {'end': 17776.552, 'text': 'So the price of most of the diamonds is between $0 and $2000.', 'start': 17772.77, 'duration': 3.782}, {'end': 17781.095, 'text': 'And there are very few diamonds whose price is around $20000.', 'start': 17776.552, 'duration': 4.543}], 'summary': 'Analyzing the price distribution of diamonds, most are between $0 and $2000, with few around $20000.', 'duration': 27.728, 'max_score': 17753.367, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts17753367.jpg'}, {'end': 17864.521, 'src': 'embed', 'start': 17825.953, 'weight': 0, 'content': [{'end': 17831.897, 'text': 'For loading the file, I will need pandas as well.', 'start': 17825.953, 'duration': 5.944}, {'end': 17835.64, 'text': 'Then I will write import pandas as pd.', 'start': 17832.098, 'duration': 3.542}, {'end': 17842.105, 'text': 'Since this is a csv file, I will have to write pd.read,csv.', 'start': 17835.66, 'duration': 6.445}, {'end': 17847.289, 'text': 'Then I will pass a file in it which will be diamonds.csv.', 'start': 17842.125, 'duration': 5.164}, {'end': 17849.07, 'text': 'And I will store it in diamonds object.', 'start': 17847.309, 'duration': 1.761}, {'end': 17858.676, 'text': 'And I want to see the first five records.', 'start': 17856.534, 'duration': 2.142}, {'end': 17864.521, 'text': 'To see the first five records, I just have to write diamonds.head.', 'start': 17858.696, 'duration': 5.825}], 'summary': 'Using pandas to load diamonds.csv and display the first five records.', 'duration': 38.568, 'max_score': 17825.953, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts17825953.jpg'}], 'start': 17112.417, 'title': 'Data visualization techniques', 'summary': 'Covers speed comparison of non-legendary and legendary pokemon across generations, scatterplot visualization with iris dataset, distribution and joint plots in python, adding regression line to scatterplot, creating boxplot, and implementing boxplot in jupyter notebook for various analyses and customizations.', 'chapters': [{'end': 17303.153, 'start': 17112.417, 'title': 'Pokemon generation speed analysis', 'summary': 'Discusses the speed comparison of non-legendary pokemon across generations, showcasing the lowest speed in generation 2, and the speed comparison of legendary pokemon, revealing the lowest speed in the seventh generation. it also demonstrates the use of different color palettes for bar plots, such as blues d, rocket, v-lag, and the application of fixed colors using the color attribute.', 'duration': 190.736, 'highlights': ['The lowest speed of non-legendary Pokemon is observed in generation 2.', 'The seventh generation of Legendary Pokemon exhibits the lowest speed.', 'The chapter demonstrates the use of different color palettes for bar plots, including Blues D, Rocket, and V-Lag.', 'The application of fixed colors using the color attribute is showcased by setting orange and green as colors for the bars.']}, {'end': 17864.521, 'start': 17311.411, 'title': 'Scatterplot and histogram visualization', 'summary': 'Covers the implementation of scatterplot using the iris dataset, with a demonstration of a linear relationship between sepal and petal length, and the usage of hue parameter to visualize species differentiation. additionally, it provides insights into creating a distribution plot with the diamonds dataset to visualize the price distribution, indicating that most diamonds are priced between $0 and $2000, with very few diamonds priced around $20000.', 'duration': 553.11, 'highlights': ['The scatterplot implementation using the iris dataset demonstrates a linear relationship between sepal and petal length, providing a visual representation of the data distribution and relationship (e.g., increase in sepal length corresponds to an increase in petal length).', 'The usage of the hue parameter in the scatterplot enables the visualization of species differentiation, depicting the distinct characteristics of Setosa, Versicolor, and Virginica based on sepal and petal length.', 'The creation of a distribution plot using the diamonds dataset showcases the price distribution, indicating that most diamonds are priced between $0 and $2000, with very few diamonds priced around $20000.']}, {'end': 18408.15, 'start': 17864.882, 'title': 'Distribution and joint plots in python', 'summary': 'Covers creating distribution plots to visualize price distribution and customizing color, number of bins, and orientation, and using joint plots to understand the relationship between variables in python.', 'duration': 543.268, 'highlights': ['Creating distribution plots to visualize price distribution and customizing color, number of bins, and orientation', 'Using joint plots to understand the relationship between variables in Python']}, {'end': 18711.06, 'start': 18409.031, 'title': 'Adding regression line and creating boxplot', 'summary': 'Explains how to add a regression line to a scatterplot and histogram, indicating a linear relationship between sepal length and petal length, and demonstrates the use of boxplot to analyze customer churn, showing that customers with longer tenure are less likely to leave.', 'duration': 302.029, 'highlights': ['Boxplot analysis reveals that customers with a median tenure of around 40 months are less likely to leave, while those with a median tenure of around 10 months are more likely to churn.', 'Adding a regression line through scatterplot and histograms indicates a linear relationship between sepal length and petal length.', "The chapter introduces the process of adding a regression line to a scatterplot and histogram using the 'kind=reg' parameter, visually depicting the linear relationship between sepal length and petal length."]}, {'end': 19317.719, 'start': 18711.08, 'title': 'Implementing boxplot in jupyter notebook', 'summary': 'Demonstrates the implementation of boxplot in jupyter notebook using churn data set to visualize the relationship between variables such as tenure and churn, internet service and monthly charges, and contract and tenure, along with customization options like color palette, line width, and order of categories.', 'duration': 606.639, 'highlights': ['Implemented Boxplot to visualize the relationship between tenure and churn, where churn values of 0 and 1 were explained, demonstrating the use of sns.boxplot and visualization of tenure with respect to churn.', 'Visualized the relationship between internet service and monthly charges, showcasing the median, minimum, and maximum monthly charges for DSL and Fiberoptic, as well as the charges for customers not availing internet service.', 'Explored customization options like color palette, line width, and order of categories, demonstrating their impact on the visualization of the relationship between variables such as contract and tenure, and payment methods for different contract types.']}], 'duration': 2205.302, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts17112417.jpg', 'highlights': ['The lowest speed of non-legendary Pokemon is observed in generation 2.', 'The seventh generation of Legendary Pokemon exhibits the lowest speed.', 'Boxplot analysis reveals that customers with a median tenure of around 40 months are less likely to leave.', 'The scatterplot implementation using the iris dataset demonstrates a linear relationship between sepal and petal length.', 'Implemented Boxplot to visualize the relationship between tenure and churn.']}, {'end': 21683.548, 'segs': [{'end': 19387.129, 'src': 'embed', 'start': 19350.7, 'weight': 1, 'content': [{'end': 19359.472, 'text': 'And here you can see my beautiful boxplot where I have three categories and four different boxplots.', 'start': 19350.7, 'duration': 8.772}, {'end': 19361.595, 'text': 'Now we will learn about pairplot.', 'start': 19359.492, 'duration': 2.103}, {'end': 19373.487, 'text': 'So, pairplot will give you a scatterplot or a frequency polygon between all the numerical columns in your data set.', 'start': 19365.643, 'duration': 7.844}, {'end': 19387.129, 'text': 'If you want to analyze between the same columns, you will get a frequency polygon.', 'start': 19382.086, 'duration': 5.043}], 'summary': 'Boxplot with 3 categories and 4 plots; pairplot shows scatterplot between numerical columns.', 'duration': 36.429, 'max_score': 19350.7, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts19350700.jpg'}, {'end': 19479.774, 'src': 'embed', 'start': 19440.939, 'weight': 2, 'content': [{'end': 19443.341, 'text': 'How all these numerical columns are related.', 'start': 19440.939, 'duration': 2.402}, {'end': 19445.821, 'text': 'I will get that information easily.', 'start': 19444.201, 'duration': 1.62}, {'end': 19449.602, 'text': 'I will add one more comment here.', 'start': 19445.881, 'duration': 3.721}, {'end': 19458.603, 'text': 'Pairplot Then I will write here.', 'start': 19451.042, 'duration': 7.561}, {'end': 19462.024, 'text': 'sns Actually, first I have to load the file.', 'start': 19458.623, 'duration': 3.401}, {'end': 19471.306, 'text': 'So here sns.load underscore dataset I have to give the name of the dataset in it, which will be iris.', 'start': 19462.204, 'duration': 9.102}, {'end': 19476.411, 'text': 'So, we have loaded the file here.', 'start': 19474.77, 'duration': 1.641}, {'end': 19479.774, 'text': 'After that, I have to make a pairplot.', 'start': 19476.531, 'duration': 3.243}], 'summary': 'Loading iris dataset using sns.load_dataset and creating a pairplot.', 'duration': 38.835, 'max_score': 19440.939, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts19440939.jpg'}, {'end': 20249.615, 'src': 'embed', 'start': 20212.585, 'weight': 5, 'content': [{'end': 20214.286, 'text': 'Royal Challengers 70 tosses.', 'start': 20212.585, 'duration': 1.701}, {'end': 20216.047, 'text': 'So, this is quite interesting.', 'start': 20214.306, 'duration': 1.741}, {'end': 20220.09, 'text': "So, it seems that Rohit Sharma's luck with toss is quite good.", 'start': 20216.508, 'duration': 3.582}, {'end': 20232.669, 'text': 'Then after this, I want to extract all the records of the teams who have won the match after batting first.', 'start': 20220.11, 'duration': 12.559}, {'end': 20238.075, 'text': 'If any team has won the match after batting first, then the value here will not be zero.', 'start': 20232.689, 'duration': 5.386}, {'end': 20249.615, 'text': 'Because if you are winning the match, you will win by some runs.', 'start': 20245.771, 'duration': 3.844}], 'summary': "Rohit sharma has a good toss luck. extract winning teams' records after batting first.", 'duration': 37.03, 'max_score': 20212.585, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts20212585.jpg'}, {'end': 20587.32, 'src': 'embed', 'start': 20559.302, 'weight': 4, 'content': [{'end': 20562.282, 'text': 'And here, I am setting the figure size as 6.6.', 'start': 20559.302, 'duration': 2.98}, {'end': 20563.623, 'text': 'Then barplot plt.par.', 'start': 20562.282, 'duration': 1.341}, {'end': 20567.005, 'text': 'Here I have to pass categorical values.', 'start': 20564.443, 'duration': 2.562}, {'end': 20569.847, 'text': 'So batting first, winner, dot, value counts.', 'start': 20567.405, 'duration': 2.442}, {'end': 20571.468, 'text': 'Here I am doing the top 3 teams.', 'start': 20569.867, 'duration': 1.601}, {'end': 20573.109, 'text': 'So it will be 0 to 3.', 'start': 20571.488, 'duration': 1.621}, {'end': 20574.43, 'text': 'Then dot keys method.', 'start': 20573.109, 'duration': 1.321}, {'end': 20576.792, 'text': 'Dot keys method will obviously give me the name.', 'start': 20574.851, 'duration': 1.941}, {'end': 20580.975, 'text': 'So here dot keys will give me the names of Mumbai Indians, Chennai Super Kings and Kings XI Punjab.', 'start': 20577.052, 'duration': 3.923}, {'end': 20583.357, 'text': 'After that I need values.', 'start': 20581.275, 'duration': 2.082}, {'end': 20587.32, 'text': 'So here batting first, winner, value count, 0 to 3.', 'start': 20583.377, 'duration': 3.943}], 'summary': 'Setting figure size as 6.6, creating barplot for top 3 teams using categorical values.', 'duration': 28.018, 'max_score': 20559.302, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts20559302.jpg'}, {'end': 20726.733, 'src': 'embed', 'start': 20700.774, 'weight': 0, 'content': [{'end': 20705.297, 'text': "So, if I don't use this, you won't see the percentage distribution in your pie chart.", 'start': 20700.774, 'duration': 4.523}, {'end': 20709.06, 'text': 'So, I am showing you the percentage distribution with this parameter.', 'start': 20705.317, 'duration': 3.743}, {'end': 20715.324, 'text': "Let's click on run again.", 'start': 20714.403, 'duration': 0.921}, {'end': 20717.946, 'text': 'So, this is the percentage distribution.', 'start': 20715.344, 'duration': 2.602}, {'end': 20720.708, 'text': 'So, the percentage of Mumbai Indians winning the first batting is 16.4%.', 'start': 20717.966, 'duration': 2.742}, {'end': 20723.691, 'text': 'After that, 16% of Chennai, 11.1% of Punjab, 10.8% of Kolkata and the rest is decreasing.', 'start': 20720.708, 'duration': 2.983}, {'end': 20726.733, 'text': 'So, this is the biggest slice of Mumbai Indians.', 'start': 20724.111, 'duration': 2.622}], 'summary': 'The pie chart shows percentage distribution: mumbai indians 16.4%, chennai 16%, punjab 11.1%, kolkata 10.8%.', 'duration': 25.959, 'max_score': 20700.774, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts20700774.jpg'}, {'end': 21183.332, 'src': 'embed', 'start': 21157.452, 'weight': 3, 'content': [{'end': 21161.616, 'text': 'So, this is the analysis of batting first and batting second.', 'start': 21157.452, 'duration': 4.164}, {'end': 21168.341, 'text': 'After this, I would like to see which season has the most matches.', 'start': 21162.256, 'duration': 6.085}, {'end': 21173.045, 'text': 'So, in our IPL data frame, this is the season column.', 'start': 21168.521, 'duration': 4.524}, {'end': 21179.17, 'text': 'So, if I see its value counts, So this tells me that in the 2013 season, there were the most matches.', 'start': 21173.486, 'duration': 5.684}, {'end': 21179.79, 'text': 'In 2013, there were 76 matches.', 'start': 21179.21, 'duration': 0.58}, {'end': 21181.491, 'text': 'And the least matches were in the 2009 season.', 'start': 21179.83, 'duration': 1.661}, {'end': 21183.332, 'text': 'In 2009, there were only 57 matches.', 'start': 21181.511, 'duration': 1.821}], 'summary': 'In 2013, ipl had the most matches (76), while in 2009, there were the least matches (57).', 'duration': 25.88, 'max_score': 21157.452, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts21157452.jpg'}], 'start': 19319.04, 'title': 'Ipl and cricket match analysis', 'summary': 'Covers data analysis and visualization techniques using python libraries to analyze ipl matches data, explore the dataset of three empires with 636 matches, and provide insights on man of the match awards, match results, and statistical analysis of ipl matches including batting analysis and correlation between winning the toss and winning the match.', 'chapters': [{'end': 19815.925, 'start': 19319.04, 'title': 'Data analysis and visualization', 'summary': 'Demonstrates data analysis and visualization techniques using python libraries to analyze ipl matches data, create boxplots, scatterplots, and frequency polygons, and understand the structure of the dataset.', 'duration': 496.885, 'highlights': ['The chapter demonstrates the use of Python libraries like pandas, matplotlib, and seaborn to analyze and visualize IPL matches data, presenting a practical approach to data manipulation and visualization.', 'A detailed explanation of creating boxplots, pairplots, and scatterplots is provided, offering insights into the relationships between numerical columns in the dataset and the use of hue for color differentiation in the visualizations.', 'The explanation includes the process of loading the dataset, understanding the columns and their significance, such as the season, city, date, teams, toss winner, result, and winner, providing a comprehensive understanding of the dataset structure and its attributes.', "The chapter covers the concept of wins in IPL matches, including 'win by runs' and 'win by wickets', elucidating the significance of the 'win by runs' and 'win by wickets' metrics in determining match outcomes and showcasing a practical application of the dataset analysis."]}, {'end': 20091.206, 'start': 19816.325, 'title': 'Exploratory data analysis of cricket matches', 'summary': 'Explores the dataset of three empires, with 636 records representing 636 matches, and analyzes the frequency of man of the match awards, revealing chris gayle as the top winner with 18 awards.', 'duration': 274.881, 'highlights': ['IPL data frame contains 636 records, representing 636 matches, and 18 columns, providing an overview of the dataset.', 'The analysis reveals Chris Gayle as the top winner of the Man of the Match award, with 18 awards, followed by Yusuf Pathan with 16, ABD and David Warner with 15 each, indicating the frequency of the awards among players.', 'The process of creating a barplot for the top 5 players with the most Man of the Match awards is explained, utilizing categorical and numerical values to visualize the data.']}, {'end': 20419.541, 'start': 20092.907, 'title': 'Data analysis in ipl matches', 'summary': 'Discusses data analysis in ipl matches, including the distribution of man of the match awards, match results, toss winners, and win by runs distribution after batting first.', 'duration': 326.634, 'highlights': ['The team with the most man of the match awards are Chris Gayle, Yusuf Pathan, ABD, David Warner, and Rohit Sharma.', 'Out of 636 matches, 626 were normal matches, 9 were tie matches, and 1 had no result.', 'Mumbai Indians have won the most tosses with 85, followed by Kolkata Knight Riders with 78, and Delhi Daredevils with 72.', 'The distribution of win by runs shows the runs scored by winning teams after batting first, visualized using a histogram.']}, {'end': 20890.738, 'start': 20419.581, 'title': 'Ipl batting analysis', 'summary': 'Provides an analysis of ipl matches, revealing that most teams win by 0-30 runs, with mumbai indians and chennai super kings being the top teams winning by batting first, and mumbai indians having the highest win percentage of 16.4%.', 'duration': 471.157, 'highlights': ['Mumbai Indians won the most matches by batting first with 47 wins, followed by Chennai Super Kings with 46 wins, and Kings XI Punjab with 32 wins.', 'Mumbai Indians have the highest win percentage of 16.4% when batting first, followed by Chennai Super Kings with 16% and Kings XI Punjab with 11.1%.', 'The histogram analysis shows that teams winning by batting first generally win by 0-30 runs, and very few matches are won with more than 100 runs.']}, {'end': 21314.986, 'start': 20892, 'title': 'Ipl statistical analysis', 'summary': 'Provides statistical analysis of ipl matches, including insights on teams winning batting second, top teams with most wins batting second, percentage distribution of wins, matches per season, city-wise matches, and the correlation between winning the toss and winning the match.', 'duration': 422.986, 'highlights': ['Kolkata Knight Riders have won the most matches by batting 2nd with 46 wins, followed by Mumbai Indians with 44 wins and Royal Challengers Bangalore with 42 wins.', 'In 2013, there were the most matches with 76, while the least matches were in the 2009 season with 57 matches.', 'Teams winning the toss also won the match 51% of the time, indicating a 50-50 chance and a minimal impact of winning the toss on match outcomes.']}, {'end': 21683.548, 'start': 21322.165, 'title': 'Cricket match analysis', 'summary': 'Discusses loading and analyzing ball-by-ball data from a csv file, revealing insights about the match, the number of unique matches, and analyzing the innings of srh and rcb, highlighting differences in runs and dismissals.', 'duration': 361.383, 'highlights': ['The CSV file contains ball-by-ball information for 636 matches, with each match having an average of 248 records, indicating 8 extras per match.', 'SRH innings had 57 singles, 32 dot balls, 17 fours, 9 sixes, and 4 dismissals, with 3 caught outs and 1 bowled out.', 'RCB innings had 44 singles, 49 dot balls, 15 fours, 8 sixes, and 10 dismissals, with 6 caught outs, 2 bowled outs, and 2 run outs, indicating RCB being all out.']}], 'duration': 2364.508, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts19319040.jpg', 'highlights': ['The CSV file contains ball-by-ball information for 636 matches, with each match having an average of 248 records, indicating 8 extras per match.', 'The team with the most man of the match awards are Chris Gayle, Yusuf Pathan, ABD, David Warner, and Rohit Sharma.', 'Mumbai Indians have won the most tosses with 85, followed by Kolkata Knight Riders with 78, and Delhi Daredevils with 72.', 'IPL data frame contains 636 records, representing 636 matches, and 18 columns, providing an overview of the dataset.', 'Teams winning the toss also won the match 51% of the time, indicating a 50-50 chance and a minimal impact of winning the toss on match outcomes.', 'Mumbai Indians won the most matches by batting first with 47 wins, followed by Chennai Super Kings with 46 wins, and Kings XI Punjab with 32 wins.']}, {'end': 22933.496, 'segs': [{'end': 21918.171, 'src': 'embed', 'start': 21860.96, 'weight': 0, 'content': [{'end': 21862.401, 'text': 'Hazard is playing for Real Madrid.', 'start': 21860.96, 'duration': 1.441}, {'end': 21866.825, 'text': "We have a lot of other columns, but we won't look at them for now.", 'start': 21862.441, 'duration': 4.384}, {'end': 21869.787, 'text': 'You can see that there are a lot of columns in the middle.', 'start': 21866.865, 'duration': 2.922}, {'end': 21882.538, 'text': 'If I want to see the name of each column, I can start with a for loop.', 'start': 21876.412, 'duration': 6.126}, {'end': 21887.782, 'text': 'For call in fifa.columns print I am printing the name of each column.', 'start': 21882.778, 'duration': 5.004}, {'end': 21889.063, 'text': 'These columns are present in it.', 'start': 21887.802, 'duration': 1.261}, {'end': 21904.862, 'text': 'Power Jumping, Power Stamina, Mentality, Aggression, Goal Keeping, Handling, Goal Keeping, Diving, Attacking, Crossing Attacking, Finishing, Physique,', 'start': 21895.155, 'duration': 9.707}, {'end': 21905.802, 'text': 'Shooting Pace.', 'start': 21904.862, 'duration': 0.94}, {'end': 21907.924, 'text': 'All these columns are present.', 'start': 21906.643, 'duration': 1.281}, {'end': 21912.907, 'text': 'I want to see how many columns and records are there in this data frame.', 'start': 21908.444, 'duration': 4.463}, {'end': 21915.569, 'text': 'I can use the shape method for that.', 'start': 21913.588, 'duration': 1.981}, {'end': 21918.171, 'text': 'You can see FIFA.Shape here.', 'start': 21916.19, 'duration': 1.981}], 'summary': 'Fifa dataset has numerous columns including power jumping, power stamina, mentality, aggression, goal keeping, handling, diving, attacking, crossing, finishing, physique, shooting pace, and it contains information on hazard playing for real madrid.', 'duration': 57.211, 'max_score': 21860.96, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts21860960.jpg'}, {'end': 22167.97, 'src': 'embed', 'start': 22113.3, 'weight': 2, 'content': [{'end': 22124.888, 'text': 'you have to keep in mind that that your first value or parameter should be categorical and your second parameter should be numerical.', 'start': 22113.3, 'duration': 11.588}, {'end': 22128.971, 'text': 'So, here you can see that I am using keys here.', 'start': 22124.908, 'duration': 4.063}, {'end': 22133.175, 'text': 'Keys means I will get the names of these countries.', 'start': 22129.112, 'duration': 4.063}, {'end': 22139.48, 'text': 'So, first I am passing categorical values and then I need numerical entries.', 'start': 22133.195, 'duration': 6.285}, {'end': 22142.703, 'text': 'So, for numerical entries, I will use this small command.', 'start': 22139.54, 'duration': 3.163}, {'end': 22144.344, 'text': 'I will not add the dot keys here.', 'start': 22142.783, 'duration': 1.561}, {'end': 22149.146, 'text': 'And here I am setting green color for every bar.', 'start': 22146.005, 'duration': 3.141}, {'end': 22150.446, 'text': 'So, color is equal to G.', 'start': 22149.306, 'duration': 1.14}, {'end': 22154.447, 'text': 'So, I will get green color for every bar.', 'start': 22150.446, 'duration': 4.001}, {'end': 22156.287, 'text': 'So, you can see clearly from this plot.', 'start': 22154.607, 'duration': 1.68}, {'end': 22161.028, 'text': 'So, most of the players belong to England in this data frame.', 'start': 22156.307, 'duration': 4.721}, {'end': 22164.309, 'text': 'Then Germany, Spain, France and Argentina.', 'start': 22161.448, 'duration': 2.861}, {'end': 22167.97, 'text': "So, you won't get much difference between these three.", 'start': 22164.829, 'duration': 3.141}], 'summary': 'Using categorical and numerical parameters to plot country data, revealing england as having the most players.', 'duration': 54.67, 'max_score': 22113.3, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts22113300.jpg'}, {'end': 22283.021, 'src': 'embed', 'start': 22245.978, 'weight': 1, 'content': [{'end': 22252.804, 'text': 'Now I have to put this salary in descending order so that I know who are the top 5 players who get the most salary.', 'start': 22245.978, 'duration': 6.826}, {'end': 22266.697, 'text': 'What is the name of this object? Player salary.', 'start': 22264.636, 'duration': 2.061}, {'end': 22276.499, 'text': 'I am using sort values method on this player salary data frame and I have to sort the values from this column.', 'start': 22266.717, 'duration': 9.782}, {'end': 22283.021, 'text': 'Here I am using buy is equal to wage in euro and ascending is equal to false set.', 'start': 22276.559, 'duration': 6.462}], 'summary': 'Sorting player salaries in descending order to identify top 5 earners.', 'duration': 37.043, 'max_score': 22245.978, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts22245978.jpg'}], 'start': 21688.269, 'title': 'Fifa and german national team data analysis', 'summary': 'Covers exploratory data analysis of the fifa dataset, including player attributes and nationality distribution. it also presents insights on player salaries, visualization of highest-paid players, and analysis of german national team data. key findings include england having the highest number of players (1667) and messi being the highest-paid player with a salary of $565,000.', 'chapters': [{'end': 21860.96, 'start': 21688.269, 'title': 'Fifa data analysis', 'summary': 'Covers the exploratory data analysis of the fifa dataset, including the import of required libraries such as pandas, matplotlib, and seaborn, loading of the dataset players20.csv, and displaying key attributes of individual players such as fifa id, url, short and long names, age, date of birth, height, weight, nationality, and club.', 'duration': 172.691, 'highlights': ['The dataset players20.csv is loaded using the pd.read_csv method from the Pandas library, and the first five records of the data frame are displayed using the head method.', 'Individual player attributes such as FIFA ID, URL, short and long names, age, date of birth, height, weight, nationality, and club are presented, including specific details about players like Messi, Ronaldo, and Neymar.']}, {'end': 22142.703, 'start': 21860.96, 'title': 'Fifa data analysis', 'summary': 'Covers analyzing fifa data to determine the number of players from different nationalities, with england having the highest number of players (1667), followed by germany (1216), spain (1035), france (893), and argentina (833) out of a total of 18,278 players and 104 columns.', 'duration': 281.743, 'highlights': ['England has the highest number of players (1667) in the data frame, followed by Germany (1216), Spain (1035), France (893), and Argentina (833) out of a total of 18,278 players and 104 columns.', 'The data frame consists of 18,278 players and 104 columns.', 'The chapter begins with analyzing the nationality column to determine the frequency of players from different countries.']}, {'end': 22318.2, 'start': 22142.783, 'title': 'Fifa data analysis', 'summary': "Provides an analysis of fifa player distribution by country, top 5 players' salaries, and a barplot visualization of the highest-paid players, revealing england as the country with the most players and messi as the highest-paid player with a salary of $565,000.", 'duration': 175.417, 'highlights': ['The majority of FIFA players belong to England, followed by Germany, Spain, France, and Argentina.', 'Spain has more than 600 players compared to England, indicating a significant difference in player distribution.', 'The top 5 players with the highest salaries are Messi ($565,000), Hazard ($470,000), Ronaldo ($405,000), Griezmann ($370,000), and Kevin De Bruyne ($370,000).', 'A barplot visualization is created for the top 5 players, showcasing their respective salaries and emphasizing Messi as the highest-paid player.']}, {'end': 22696.488, 'start': 22318.22, 'title': 'Creating barplot and analyzing german national team data', 'summary': 'Covers creating a barplot using matplotlib, extracting and analyzing data of the german national football team, including the top 5 tallest, heaviest, and highest earning players.', 'duration': 378.268, 'highlights': ["Creating a barplot using matplotlib with categorical and numerical variables, setting different colors for each player's bar, and customizing the plot.", 'Extracting and analyzing data of the German national football team, including the top 5 tallest players, heaviest players, and highest earning players.', 'Sorting and displaying the top 5 players of the German national team based on their height, weight, and salary, providing quantifiable data for each category.']}, {'end': 22933.496, 'start': 22696.789, 'title': 'Fifa data analysis: real madrid players', 'summary': 'Involves extracting and analyzing fifa data to find the top 5 players with the best shooting and defending skills, as well as the highest earning players and the nationality distribution of real madrid players.', 'duration': 236.707, 'highlights': ['Cristiano Ronaldo has the highest shooting rating of 93, followed by Messi with 92, Harry Kane with 91, Aguero with 90, and Quagliarella with 89.', "Real Madrid's highest earning players are Eden Hazard, Luka Modric, Toni Kroos, Sergio Ramos, and Benzema.", 'Sergio Ramos is the best defender of Real Madrid, followed by Casemiro, Varane, Carvajal, and Militao.', '13 players of Real Madrid belong to Spain, making it the most represented nationality in the team.']}], 'duration': 1245.227, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts21688269.jpg', 'highlights': ['England has the highest number of players (1667) in the data frame.', 'The dataset players20.csv is loaded using the pd.read_csv method from the Pandas library.', 'The majority of FIFA players belong to England, followed by Germany, Spain, France, and Argentina.', 'The top 5 players with the highest salaries are Messi ($565,000), Hazard ($470,000), Ronaldo ($405,000), Griezmann ($370,000), and Kevin De Bruyne ($370,000).', 'A barplot visualization is created for the top 5 players, showcasing their respective salaries and emphasizing Messi as the highest-paid player.']}, {'end': 24926.855, 'segs': [{'end': 22999.146, 'src': 'embed', 'start': 22965.311, 'weight': 0, 'content': [{'end': 22967.631, 'text': 'So I am loading them here.', 'start': 22965.311, 'duration': 2.32}, {'end': 22971.552, 'text': 'So import Pandas as pd then import Matplotlib.', 'start': 22968.211, 'duration': 3.341}, {'end': 22976.045, 'text': "The matplotlib's pyplot is a sub-module and its alias is plt.", 'start': 22972.481, 'duration': 3.564}, {'end': 22979.669, 'text': 'After loading both the libraries, I need to load my dataset.', 'start': 22976.065, 'duration': 3.604}, {'end': 22982.632, 'text': 'I have a csv file named characterstats.csv.', 'start': 22979.749, 'duration': 2.883}, {'end': 22999.146, 'text': 'Since this is a CSV file, I can use read underscore CSV whenever I want to load it.', 'start': 22991.941, 'duration': 7.205}], 'summary': 'Loading characterstats.csv using pandas and matplotlib for data analysis.', 'duration': 33.835, 'max_score': 22965.311, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts22965311.jpg'}, {'end': 23330.64, 'src': 'embed', 'start': 23299.975, 'weight': 2, 'content': [{'end': 23304.877, 'text': 'So, if you see the column of power here, you will see all the values equal to 100.', 'start': 23299.975, 'duration': 4.902}, {'end': 23313.727, 'text': 'So, Satana 100, Thor 100, Spawn 100, Beyonder 100, These are the top most powerful superheroes.', 'start': 23304.877, 'duration': 8.85}, {'end': 23317.39, 'text': 'If you have seen the Avengers, you must have known Thor.', 'start': 23313.787, 'duration': 3.603}, {'end': 23321.733, 'text': 'It seems like there is a man or a woman on top of Thor.', 'start': 23317.49, 'duration': 4.243}, {'end': 23323.274, 'text': "I don't know who Zatanna is.", 'start': 23321.773, 'duration': 1.501}, {'end': 23327.638, 'text': 'These are our top 5 superheroes.', 'start': 23323.855, 'duration': 3.783}, {'end': 23330.64, 'text': 'Now I want to see the max power.', 'start': 23328.158, 'duration': 2.482}], 'summary': 'Top 5 superheroes have equal power value 100. thor is well-known.', 'duration': 30.665, 'max_score': 23299.975, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts23299975.jpg'}, {'end': 23514.551, 'src': 'embed', 'start': 23486.737, 'weight': 3, 'content': [{'end': 23493.039, 'text': 'Because this is a bar plot, the first parameter should be categorical and the second should be numerical.', 'start': 23486.737, 'duration': 6.302}, {'end': 23501.283, 'text': 'Here you can see the name of the character is passing as the first parameter.', 'start': 23493.079, 'duration': 8.204}, {'end': 23505.785, 'text': 'And I am passing the total of the character as the second parameter.', 'start': 23502.723, 'duration': 3.062}, {'end': 23510.348, 'text': 'And I have set the same color for all the bars.', 'start': 23505.905, 'duration': 4.443}, {'end': 23512.53, 'text': 'I have set the green color for all the bars here.', 'start': 23510.368, 'duration': 2.162}, {'end': 23514.551, 'text': "So now let's visualize this.", 'start': 23513.13, 'duration': 1.421}], 'summary': 'Visualize bar plot with character names and totals using green color.', 'duration': 27.814, 'max_score': 23486.737, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts23486737.jpg'}, {'end': 23979.638, 'src': 'embed', 'start': 23939.725, 'weight': 5, 'content': [{'end': 23944.529, 'text': 'So right now our phones have a storage of 20 GB.', 'start': 23939.725, 'duration': 4.804}, {'end': 23952.573, 'text': 'So imagine, 20 years ago, we had Sloughy Bistro in the 90s or 80s.', 'start': 23949.09, 'duration': 3.483}, {'end': 23955.155, 'text': 'So at one time, its maximum storage space was just 512 KB.', 'start': 23952.593, 'duration': 2.562}, {'end': 23957.156, 'text': 'So at that time, you could store a maximum of 512 KB.', 'start': 23955.215, 'duration': 1.941}, {'end': 23959.278, 'text': 'So that is not data, it is very little data.', 'start': 23957.176, 'duration': 2.102}, {'end': 23979.638, 'text': 'So because at that time, the data was very little present, so whatever you wanted to store, the capacity of your storage devices was also very less.', 'start': 23959.298, 'duration': 20.34}], 'summary': '20 years ago, storage was 512 kb, now 20 gb.', 'duration': 39.913, 'max_score': 23939.725, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts23939725.jpg'}, {'end': 24058.264, 'src': 'embed', 'start': 24021.381, 'weight': 4, 'content': [{'end': 24023.542, 'text': 'We can solve some business problems with it.', 'start': 24021.381, 'duration': 2.161}, {'end': 24025.222, 'text': 'Because there was very little data.', 'start': 24023.562, 'duration': 1.66}, {'end': 24027.442, 'text': 'You will not get any insights from that little data.', 'start': 24025.262, 'duration': 2.18}, {'end': 24034.104, 'text': 'But after the boom of social media, after the boom of internet, we have data only.', 'start': 24027.462, 'duration': 6.642}, {'end': 24041.409, 'text': 'And when we talk about big data, data is present in terabytes and exabytes.', 'start': 24036.425, 'duration': 4.984}, {'end': 24045.593, 'text': 'And every second these exabytes of data are generated.', 'start': 24041.91, 'duration': 3.683}, {'end': 24048.996, 'text': 'And this whole data is in unstructured form.', 'start': 24046.294, 'duration': 2.702}, {'end': 24058.264, 'text': 'So, what does unstructured data mean? Whatever data is not in the form of rows and columns, we will call it unstructured data.', 'start': 24049.016, 'duration': 9.248}], 'summary': 'Big data holds terabytes and exabytes, generated every second from unstructured sources.', 'duration': 36.883, 'max_score': 24021.381, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts24021381.jpg'}], 'start': 22933.516, 'title': 'Data analysis and data science evolution', 'summary': 'Introduces a data analysis case study on superheroes and villains, with 6 players from brazil, 3 from france, 2 from belgium, and 1 from other countries. it discusses the analysis of superheroes and villains from the marvel universe, revealing specific insights into the top 5 superheroes with the maximum speed and power. additionally, it illustrates the evolution of data from small, structured form to the current unstructured, exabyte-scale data, emphasizing the rise of data science and its potential for business problem-solving.', 'chapters': [{'end': 23028.898, 'start': 22933.516, 'title': 'Data analysis of superheroes and villains', 'summary': 'Introduces a data analysis case study on superheroes and villains, with 6 players from brazil, 3 from france, 2 from belgium, and 1 from other countries. the analysis involves importing pandas for data wrangling and matplotlib for visualization, loading a dataset named characterstats.csv, and displaying the first 5 records of the dataframe.', 'duration': 95.382, 'highlights': ['The analysis involves importing Pandas for data wrangling and Matplotlib for visualization.', 'The dataset consists of 6 players from Brazil, 3 from France, 2 from Belgium, and 1 from other countries.', 'Loading a dataset named characterstats.csv and displaying the first 5 records of the dataframe.']}, {'end': 23460.693, 'start': 23028.978, 'title': 'Superheroes and villains analysis', 'summary': 'Discusses the analysis of superheroes and villains from the marvel universe, revealing that out of 611 characters, 432 are good (superheroes), 165 are bad (villains), and 11 are neutral, with specific insights into the top 5 superheroes with the maximum speed and power, and the top 5 superheroes with the highest total power.', 'duration': 431.715, 'highlights': ['Out of 611 characters, 432 are good (superheroes), 165 are bad (villains), and 11 are neutral.', 'The top 5 superheroes with the maximum speed are Flash, Jack of Hearts, Impulse, Stardust, and Quicksilver, all with a speed rating of 100.', 'The top 5 superheroes with the maximum power are Satana, Thor, Spawn, Beyonder, and an unidentified character, all with a power rating of 100.', 'There are 33 superheroes whose power is maximum, with a value of 100.', 'The top 5 superheroes with the highest total power are Martian Manhunter, Superman, Stardust, Thor, and Supergirl, with specific total power values mentioned for each character.']}, {'end': 23823.2, 'start': 23460.733, 'title': 'Superheroes and supervillains analysis', 'summary': 'Presents an analysis of superheroes and supervillains, including creating bar plots of powerful characters, extracting and visualizing records based on alignment and stats, and analyzing speed and intelligence distribution among them.', 'duration': 362.467, 'highlights': ['Created a bar plot of powerful superheroes, with Martian Manhunter having the highest total and Supergold at the 5th position.', 'Extracted supervillains with bad alignment from the MARVEL data frame and displayed the first five records, including Abomination, Abraxas, Airwalker, Amazo, and Ammo.', 'Sorted and displayed the top 5 supervillains with the highest speed, with Zoom, Airwalker, Amazo, Superboy, and General Zod having a speed of 100.', 'Sorted and displayed the top 5 most intelligent supervillains, with Mr. Misp, Lex Luthor, Leader, Brainiac, and Doctor Doom having the highest intelligence.', 'Sorted and displayed the top 5 most dangerous supervillains based on total stats, with Superboy Prime, General Zod, Amazo, Dormammu, and Doomsday being the most dangerous among DC and Marvel villains.', 'Visualized the speed distribution of superheroes using a histogram and observed that the speed of these characters is predominantly low.', 'Visualized the combat column for supervillains using a histogram and observed that the majority of supervillains have a combat score between 0 and 10, with very few having a score above 50.']}, {'end': 24138.534, 'start': 23823.26, 'title': 'Evolution of data and data science', 'summary': 'Illustrates the evolution of data from small, structured form to the current unstructured, exabyte-scale data, emphasizing the rise of data science and its potential for business problem-solving, with a focus on insights from raw data.', 'duration': 315.274, 'highlights': ['Data has evolved from small, structured form to unstructured, exabyte-scale data, generated every second, mainly from social media, posing an opportunity for valuable insights through data science and its related fields.', 'The rise of social media and the internet has led to the generation of a vast amount of unstructured data, including images, videos, and XML files, necessitating the proper utilization of this data for significant benefits.', 'Data science involves finding insights from raw data to solve business problems, signifying the conversion of data into valuable information, distinguishing data science from mere data collection.']}, {'end': 24926.855, 'start': 24138.574, 'title': 'Fraud detection and data science lifecycle', 'summary': 'Discusses how machine learning algorithms are used by banks to detect fraudulent transactions, and it also provides an overview of the data science lifecycle, including data acquisition, pre-processing, machine learning algorithm application, and result evaluation.', 'duration': 788.281, 'highlights': ['Banks use machine learning algorithms to detect fraudulent transactions based on spending patterns, such as detecting anomalous transactions like a sudden large expenditure on a card that is significantly higher than the usual spending pattern, leading to immediate verification by the bank.', 'The data science lifecycle involves phases such as data acquisition, pre-processing, application of machine learning algorithms based on the problem statement, and evaluating the result, with a focus on using data manipulation and visualization techniques to explore and tidy the data before applying machine learning algorithms.', 'Data acquisition involves acquiring data from various sources in different formats, integrating the data according to the problem statement, and selecting the relevant data for further processing, while pre-processing includes converting untidy data into tidy data, dealing with missing values and outliers, and conducting exploratory data analysis using data manipulation and visualization.']}], 'duration': 1993.339, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts22933516.jpg', 'highlights': ['The top 5 superheroes with the maximum speed are Flash, Jack of Hearts, Impulse, Stardust, and Quicksilver, all with a speed rating of 100.', 'The top 5 superheroes with the maximum power are Satana, Thor, Spawn, Beyonder, and an unidentified character, all with a power rating of 100.', 'Data has evolved from small, structured form to unstructured, exabyte-scale data, generated every second, mainly from social media, posing an opportunity for valuable insights through data science and its related fields.', 'Banks use machine learning algorithms to detect fraudulent transactions based on spending patterns, such as detecting anomalous transactions like a sudden large expenditure on a card that is significantly higher than the usual spending pattern, leading to immediate verification by the bank.', 'The analysis involves importing Pandas for data wrangling and Matplotlib for visualization.', 'The dataset consists of 6 players from Brazil, 3 from France, 2 from Belgium, and 1 from other countries.', 'Out of 611 characters, 432 are good (superheroes), 165 are bad (villains), and 11 are neutral.']}, {'end': 27538.639, 'segs': [{'end': 24988.606, 'src': 'embed', 'start': 24959.232, 'weight': 4, 'content': [{'end': 24961.633, 'text': 'BI tools like Tableau, Power BI, MSBI.', 'start': 24959.232, 'duration': 2.401}, {'end': 24966.671, 'text': 'So, we can use them too.', 'start': 24963.629, 'duration': 3.042}, {'end': 24969.553, 'text': 'So, this is our whole data science life cycle.', 'start': 24966.691, 'duration': 2.862}, {'end': 24971.694, 'text': 'So, we have seen the whole data science life cycle.', 'start': 24969.573, 'duration': 2.121}, {'end': 24975.717, 'text': 'So, the main part in it is to apply ML algorithms.', 'start': 24971.714, 'duration': 4.003}, {'end': 24982.662, 'text': 'So, if we are applying ML algorithms, then we also see the types of ML algorithms.', 'start': 24975.737, 'duration': 6.925}, {'end': 24988.606, 'text': 'So, in broad categories, we have supervised learning and unsupervised learning.', 'start': 24983.342, 'duration': 5.264}], 'summary': 'Data science life cycle includes bi tools like tableau, power bi, and msbi, and involves applying ml algorithms with supervised and unsupervised learning.', 'duration': 29.374, 'max_score': 24959.232, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts24959232.jpg'}, {'end': 25251.7, 'src': 'embed', 'start': 25201.2, 'weight': 3, 'content': [{'end': 25203.642, 'text': 'Or I can change the question a little.', 'start': 25201.2, 'duration': 2.442}, {'end': 25210.087, 'text': 'If I say that if this person is 33, then I want to know what will be the exact salary of this person.', 'start': 25203.762, 'duration': 6.325}, {'end': 25216.231, 'text': 'So in such situations, because salary is a continuous numerical.', 'start': 25211.107, 'duration': 5.124}, {'end': 25220.234, 'text': 'So wherever I want to predict a continuous numerical, I can use linear regression there.', 'start': 25216.251, 'duration': 3.983}, {'end': 25235.106, 'text': 'And since linear regression is a supervised learning algorithm, it will also be associated with data labels.', 'start': 25224.136, 'duration': 10.97}, {'end': 25241.751, 'text': 'So we have understood basic regression and classification in supervised learning.', 'start': 25235.126, 'duration': 6.625}, {'end': 25244.934, 'text': 'Now we will also understand about unsupervised learning.', 'start': 25241.771, 'duration': 3.163}, {'end': 25248.457, 'text': 'When we talk about unsupervised learning, our data remains unlabeled.', 'start': 25244.954, 'duration': 3.503}, {'end': 25251.7, 'text': 'So here we have a perfect example.', 'start': 25248.477, 'duration': 3.223}], 'summary': 'Linear regression used for salary prediction in supervised learning, data remains unlabeled in unsupervised learning.', 'duration': 50.5, 'max_score': 25201.2, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts25201200.jpg'}, {'end': 25450.588, 'src': 'embed', 'start': 25367.989, 'weight': 1, 'content': [{'end': 25378.317, 'text': 'So whatever clustering algorithm you apply, its task is to increase intra-cluster similarity and also increase inter-cluster dissimilarity.', 'start': 25367.989, 'duration': 10.328}, {'end': 25382.381, 'text': 'And whose case is this clustering algorithm? Unsupervised learning.', 'start': 25378.478, 'duration': 3.903}, {'end': 25390.042, 'text': "So for now, understand this much about unsupervised learning, that Even if my data doesn't have labels,", 'start': 25382.441, 'duration': 7.601}, {'end': 25402.467, 'text': 'I or this algorithm will understand the underlying structure of the underlying data and has the ability to cluster it in different categories or groups.', 'start': 25390.042, 'duration': 12.425}, {'end': 25404.988, 'text': "Now it's time to understand statistics.", 'start': 25402.527, 'duration': 2.461}, {'end': 25420.072, 'text': 'So why is statistics important in the field of data science? Well, if we want to learn data science, statistics is a very important pillar.', 'start': 25405.548, 'duration': 14.524}, {'end': 25425.772, 'text': 'If I want to make it more simple, then without statistics, data science cannot exist.', 'start': 25420.192, 'duration': 5.58}, {'end': 25429.733, 'text': 'Because what is data? Data has numbers.', 'start': 25425.832, 'duration': 3.901}, {'end': 25437.394, 'text': "And if we don't know the statistics of these numbers, then we can't do applications of data science.", 'start': 25429.853, 'duration': 7.541}, {'end': 25441.535, 'text': 'So statistics tells us about data.', 'start': 25437.995, 'duration': 3.54}, {'end': 25444.676, 'text': 'It tells us the relationship between data.', 'start': 25441.555, 'duration': 3.121}, {'end': 25450.588, 'text': "So that's why statistics is is a very essential topic in data science.", 'start': 25445.176, 'duration': 5.412}], 'summary': 'Clustering algorithms increase intra-cluster similarity and inter-cluster dissimilarity, vital for unsupervised learning. statistics is crucial for understanding data and its relationships, forming an essential pillar of data science.', 'duration': 82.599, 'max_score': 25367.989, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts25367989.jpg'}, {'end': 25815.118, 'src': 'embed', 'start': 25787.891, 'weight': 8, 'content': [{'end': 25791.372, 'text': 'I will have to go to him and ask him brother, tell me what is your salary?', 'start': 25787.891, 'duration': 3.481}, {'end': 25792.592, 'text': 'And this is such a big salary.', 'start': 25791.392, 'duration': 1.2}, {'end': 25797.214, 'text': 'if I can do this in this life of everyone, then I will have to collect his average.', 'start': 25792.592, 'duration': 4.622}, {'end': 25799.214, 'text': 'But this is obviously not possible.', 'start': 25797.414, 'duration': 1.8}, {'end': 25812.776, 'text': "I cannot go to every person in India and ask, What is your salary? I don't have that much time.", 'start': 25799.274, 'duration': 13.502}, {'end': 25815.118, 'text': 'My life will be over in this time.', 'start': 25812.796, 'duration': 2.322}], 'summary': 'Challenges in collecting average salary data from every person in india.', 'duration': 27.227, 'max_score': 25787.891, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts25787891.jpg'}, {'end': 25940.015, 'src': 'embed', 'start': 25909.851, 'weight': 12, 'content': [{'end': 25913.372, 'text': 'What will they do? They will take 100-200 people and experiment on them.', 'start': 25909.851, 'duration': 3.521}, {'end': 25925.001, 'text': 'If it works well on these 100-200 people, then we will extrapolate it and put it in the market.', 'start': 25913.472, 'duration': 11.529}, {'end': 25927.904, 'text': 'So the same thing happens in data science.', 'start': 25925.062, 'duration': 2.842}, {'end': 25933.809, 'text': 'Whatever your experiment is, the data science experiment, you will do it on the sample set.', 'start': 25927.964, 'duration': 5.845}, {'end': 25940.015, 'text': 'Then you will extrapolate the result of the sample set on the entire population.', 'start': 25933.889, 'duration': 6.126}], 'summary': 'Experiment on 100-200 people, extrapolate to market in data science.', 'duration': 30.164, 'max_score': 25909.851, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts25909851.jpg'}, {'end': 25996.613, 'src': 'embed', 'start': 25967.213, 'weight': 9, 'content': [{'end': 25973.074, 'text': 'So, from the name itself, it is known that I am randomly choosing 10, 000 people from the entire population of India.', 'start': 25967.213, 'duration': 5.861}, {'end': 25987.467, 'text': 'So the problem here is that the 10, 000 people I pick up, they can be from the same state, or they can be from the same age group,', 'start': 25978.422, 'duration': 9.045}, {'end': 25990.229, 'text': 'or they can be from the same salary bracket.', 'start': 25987.467, 'duration': 2.762}, {'end': 25996.613, 'text': "So suppose if I pick up 10, 000 people, and all these 10, 000 people are 5th class children, then everyone's salary will be zero.", 'start': 25990.249, 'duration': 6.364}], 'summary': 'Randomly selecting 10,000 people from india may lead to biased sampling based on age, state, or salary.', 'duration': 29.4, 'max_score': 25967.213, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts25967213.jpg'}, {'end': 26230.863, 'src': 'embed', 'start': 26184.993, 'weight': 10, 'content': [{'end': 26187.654, 'text': 'We will drag it a little upwards.', 'start': 26184.993, 'duration': 2.661}, {'end': 26191.876, 'text': 'I make it a little smaller and keep it up here.', 'start': 26187.754, 'duration': 4.122}, {'end': 26193.197, 'text': 'And I keep it down here.', 'start': 26192.036, 'duration': 1.161}, {'end': 26196.318, 'text': 'So first of all, my value is 150.', 'start': 26193.237, 'duration': 3.081}, {'end': 26205.735, 'text': "So here I Let's put it on the side.", 'start': 26196.318, 'duration': 9.417}, {'end': 26207.976, 'text': "Let's put it down a little.", 'start': 26205.775, 'duration': 2.201}, {'end': 26215.702, 'text': 'Now we will be able to calculate it properly.', 'start': 26208.056, 'duration': 7.646}, {'end': 26229.403, 'text': 'So our first value is 150, then plus 100, plus 200 here, plus the value is 380.', 'start': 26215.782, 'duration': 13.621}, {'end': 26230.863, 'text': 'After this, the value will be 450.', 'start': 26229.403, 'duration': 1.46}], 'summary': 'Adjust and calculate values: 150 + 100 + 200 = 380, then 450.', 'duration': 45.87, 'max_score': 26184.993, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts26184993.jpg'}, {'end': 26463.508, 'src': 'embed', 'start': 26417.065, 'weight': 14, 'content': [{'end': 26431.38, 'text': 'So if I want to know its median, it will be 100 plus 150 by 2.', 'start': 26417.065, 'duration': 14.315}, {'end': 26433.121, 'text': 'So, the value between 100 and 150 will be 250 by 2.', 'start': 26431.38, 'duration': 1.741}, {'end': 26433.902, 'text': '250 by 2 will be 125.', 'start': 26433.121, 'duration': 0.781}, {'end': 26436.523, 'text': 'So, our median will be 125.', 'start': 26433.902, 'duration': 2.621}, {'end': 26437.924, 'text': "Let's verify this once.", 'start': 26436.523, 'duration': 1.401}, {'end': 26438.845, 'text': 'So, here your R.I.', 'start': 26438.044, 'duration': 0.801}, {'end': 26440.145, 'text': 'is 150 plus 100 by 2.', 'start': 26438.865, 'duration': 1.28}, {'end': 26442.467, 'text': 'So, it will be 250 by 2 which will be 125.', 'start': 26440.145, 'duration': 2.322}, {'end': 26445.208, 'text': 'Right Here, we have calculated the median of all these values.', 'start': 26442.467, 'duration': 2.741}, {'end': 26463.508, 'text': "Here, Let's say we have odd number of elements.", 'start': 26445.228, 'duration': 18.28}], 'summary': 'The median of the given values is 125.', 'duration': 46.443, 'max_score': 26417.065, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts26417065.jpg'}, {'end': 26773.69, 'src': 'embed', 'start': 26740.543, 'weight': 11, 'content': [{'end': 26744.105, 'text': 'What is Q1? Q1 is your 25th percentile.', 'start': 26740.543, 'duration': 3.562}, {'end': 26749.709, 'text': 'So, 75th percentile minus 25th percentile will give you interquartile range.', 'start': 26744.646, 'duration': 5.063}, {'end': 26756.413, 'text': 'So, if I have all these numbers, then I have to calculate the interquartile range of these numbers.', 'start': 26749.749, 'duration': 6.664}, {'end': 26757.553, 'text': 'So, we will do that now.', 'start': 26756.793, 'duration': 0.76}, {'end': 26766.924, 'text': 'So, if I have to calculate the interquartile range, then I have to calculate the entire data will have to be set in ascending or descending order.', 'start': 26757.573, 'duration': 9.351}, {'end': 26773.69, 'text': 'So first of all, I take a text box here and start with the minimum value which is 9.', 'start': 26767.325, 'duration': 6.365}], 'summary': 'Q1 is 25th percentile. interquartile range is 75th percentile minus 25th percentile.', 'duration': 33.147, 'max_score': 26740.543, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts26740543.jpg'}, {'end': 27058.305, 'src': 'embed', 'start': 27027.913, 'weight': 0, 'content': [{'end': 27033.574, 'text': "Let's assume that if your height increases, then your weight should also increase.", 'start': 27027.913, 'duration': 5.661}, {'end': 27037.495, 'text': 'In such a situation, we will use correlation.', 'start': 27033.654, 'duration': 3.841}, {'end': 27043.936, 'text': 'The value of correlation can be from minus 1 to 1.', 'start': 27037.675, 'duration': 6.261}, {'end': 27051.241, 'text': 'So if the value of correlation is 1, it means that it is a strong positive correlation.', 'start': 27043.936, 'duration': 7.305}, {'end': 27058.305, 'text': 'If the value of correlation is minus 1, it means that it is a strong negative correlation.', 'start': 27051.321, 'duration': 6.984}], 'summary': 'Correlation measures the relationship between height and weight, ranging from -1 to 1.', 'duration': 30.392, 'max_score': 27027.913, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts27027913.jpg'}, {'end': 27146.528, 'src': 'embed', 'start': 27114.926, 'weight': 2, 'content': [{'end': 27119.808, 'text': 'So, one of your entity increased by 10 units, so the other entity is decreasing by 10 units.', 'start': 27114.926, 'duration': 4.882}, {'end': 27127.958, 'text': 'Or if we take two entities which have no relationship.', 'start': 27123.596, 'duration': 4.362}, {'end': 27136.183, 'text': 'I want to know what is the relationship between wearing a blue t-shirt and raining.', 'start': 27128.058, 'duration': 8.125}, {'end': 27138.824, 'text': 'Well, obviously there is no relationship.', 'start': 27137.063, 'duration': 1.761}, {'end': 27146.528, 'text': 'So if I wear a blue t-shirt or a red t-shirt, there will be no difference in the rain.', 'start': 27139.444, 'duration': 7.084}], 'summary': 'Increase of 10 units in one entity leads to a decrease of 10 units in the other, no relationship between wearing a blue t-shirt and raining.', 'duration': 31.602, 'max_score': 27114.926, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts27114926.jpg'}], 'start': 24926.955, 'title': 'Data science fundamentals', 'summary': 'Covers the data science life cycle, including data visualization tools like seaborn, matplotlib, and bi tools. it introduces supervised and unsupervised learning and emphasizes classification and regression algorithms. additionally, it discusses the importance of statistics, sampling techniques, measures of central tendency, and accuracy in data analysis with practical applications.', 'chapters': [{'end': 25220.234, 'start': 24926.955, 'title': 'Data science life cycle and ml algorithms', 'summary': 'Covers the data science life cycle, including data visualization tools like seaborn, matplotlib, and bi tools such as tableau, power bi, msbi. it also explains the concepts of supervised and unsupervised learning, with a detailed emphasis on classification and regression algorithms in supervised learning.', 'duration': 293.279, 'highlights': ['Data Science Life Cycle and Visualization Tools', 'Supervised and Unsupervised Learning', 'Classification Algorithms in Supervised Learning', 'Regression in Supervised Learning']}, {'end': 25757.583, 'start': 25224.136, 'title': 'Unsupervised learning and statistics basics', 'summary': 'Introduces unsupervised learning, explaining how it can cluster data without labels and then moves on to the importance of statistics in data science, highlighting the role of statistics in understanding the relationship between data and the different types of data including categorical and numerical data.', 'duration': 533.447, 'highlights': ['Unsupervised learning uses clustering algorithms to divide data into groups without labels, demonstrating high intra-cluster similarity and high inter-cluster dissimilarity.', 'Statistics is a crucial pillar in data science, as it provides insights into the relationship between data and is essential for the application of data science.', 'Different types of data, including categorical and numerical data, are explained in detail, covering ordered, nominal, and binary categorical data, as well as discrete and continuous numerical data.']}, {'end': 26644.225, 'start': 25757.603, 'title': 'Population, sample, sampling techniques, and measures of central tendency', 'summary': 'Discusses the concepts of population and sample, sampling techniques like random and stratified sampling, measures of central tendency including mean, median, and mode, and measures of variability like range and interquartile range, emphasizing the importance of these concepts in data science and their practical application.', 'duration': 886.622, 'highlights': ['The importance of taking a sample set rather than surveying the entire population is emphasized, with the example of conducting a survey on the average salary of all people in India and the practical limitations of surveying the entire population explained.', 'Explanation of random and stratified sampling techniques, with stratified sampling being recommended for imbalanced data, and the importance of understanding balance and imbalance of data highlighted.', 'Detailed explanation of measures of central tendency including mean, median, and mode, with practical demonstrations of calculating mean, median, and mode using a sample data set, highlighting their importance in finding representative values in a data set.', 'Importance of measures of variability like range and interquartile range in understanding the spread and variability of data, and the limitations of using measures of central tendency in determining the spread of data highlighted.']}, {'end': 27175.786, 'start': 26644.245, 'title': 'Understanding data analysis', 'summary': 'Explains the importance of removing extreme values, calculating interquartile range, establishing relationships using correlation, and measures of accuracy in data analysis, including a hypothetical example, with detailed explanations.', 'duration': 531.541, 'highlights': ['The average salary of the people visiting a restaurant increased from 50,000 to 50 crores when Mark Zuckerberg, Jeff Bezos, and Bill Gates visited, showcasing the impact of outliers on the data.', 'Explaining the concept of interquartile range (IQR) and its calculation using Q3 minus Q1, which helps in understanding the spread of data by focusing on the middle 50% observations.', 'Describing the use of correlation to establish relationships between data points, with the correlation value ranging from -1 to 1, indicating the strength and direction of the relationship.', 'Detailing the measures of accuracy including true positive, false positive, true negative, and false negative in data analysis, providing a comprehensive understanding of evaluating model performance.']}, {'end': 27538.639, 'start': 27176.407, 'title': 'Measures of accuracy: examples and applications', 'summary': 'Explains the four measures of accuracy: true positive, false positive, false negative, and true negative with examples involving dinosaur sightings and diabetes test results, emphasizing the significance of correct predictions for different scenarios.', 'duration': 362.232, 'highlights': ['The chapter introduces the four measures of accuracy: true positive, false positive, false negative, and true negative, using examples involving dinosaur sightings and diabetes test results.', 'The significance of correct predictions for different scenarios is emphasized, such as accurately identifying dinosaur sightings and diabetes test results.', 'The true positive scenario is exemplified by accurately identifying a dinosaur sighting or correctly diagnosing diabetes through a test.', 'False negative scenario is highlighted where a dinosaur sighting was missed or a person with diabetes was incorrectly identified as not having the condition.']}], 'duration': 2611.684, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts24926955.jpg', 'highlights': ['Supervised and Unsupervised Learning', 'Classification Algorithms in Supervised Learning', 'Regression in Supervised Learning', 'Data Science Life Cycle and Visualization Tools', 'Different types of data, including categorical and numerical data, are explained in detail', 'The importance of taking a sample set rather than surveying the entire population is emphasized', 'Explanation of random and stratified sampling techniques', 'Detailed explanation of measures of central tendency including mean, median, and mode', 'Importance of measures of variability like range and interquartile range in understanding the spread and variability of data', 'The concept of interquartile range (IQR) and its calculation using Q3 minus Q1', 'Describing the use of correlation to establish relationships between data points', 'Detailing the measures of accuracy including true positive, false positive, true negative, and false negative in data analysis', 'The average salary of the people visiting a restaurant increased from 50,000 to 50 crores when Mark Zuckerberg, Jeff Bezos, and Bill Gates visited, showcasing the impact of outliers on the data', 'The chapter introduces the four measures of accuracy: true positive, false positive, false negative, and true negative, using examples involving dinosaur sightings and diabetes test results', 'The significance of correct predictions for different scenarios is emphasized, such as accurately identifying dinosaur sightings and diabetes test results']}, {'end': 29026.384, 'segs': [{'end': 27656.712, 'src': 'embed', 'start': 27622.239, 'weight': 3, 'content': [{'end': 27631.111, 'text': 'Then, because I want to know the relationship between these two, I will make a scatterplot between them.', 'start': 27622.239, 'duration': 8.872}, {'end': 27641.027, 'text': 'So, I will map the CGPA on the X-axis and the GRE score on the Y-axis.', 'start': 27634.244, 'duration': 6.783}, {'end': 27647.189, 'text': 'In this scatterplot, you can see that it is a linear relationship.', 'start': 27641.147, 'duration': 6.042}, {'end': 27654.652, 'text': "As the student's CGPA is increasing, the student's GRE score is also increasing.", 'start': 27647.889, 'duration': 6.763}, {'end': 27656.712, 'text': 'It is going in a straight line.', 'start': 27654.692, 'duration': 2.02}], 'summary': 'A linear relationship exists between cgpa and gre scores, as cgpa increases, so does gre score.', 'duration': 34.473, 'max_score': 27622.239, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts27622239.jpg'}, {'end': 28048.684, 'src': 'embed', 'start': 28014.508, 'weight': 4, 'content': [{'end': 28018.25, 'text': 'Again, we have 4 on X.', 'start': 28014.508, 'duration': 3.742}, {'end': 28023.914, 'text': 'So, the actual value of 4 is 2, but it is predicting 5.', 'start': 28018.25, 'duration': 5.664}, {'end': 28027.396, 'text': 'So, in between these two, we will call it residual.', 'start': 28023.914, 'duration': 3.482}, {'end': 28030.077, 'text': 'So, we have understood what residual is.', 'start': 28028.116, 'duration': 1.961}, {'end': 28036.261, 'text': 'Residual is the difference between the actual values and the value predicted by the line.', 'start': 28030.097, 'duration': 6.164}, {'end': 28048.684, 'text': 'So, if I want to find the best fit line, then its sum of residual squares should be the lowest.', 'start': 28038.582, 'duration': 10.102}], 'summary': 'Residuals indicate prediction accuracy; best fit line minimizes sum of residual squares.', 'duration': 34.176, 'max_score': 28014.508, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts28014508.jpg'}, {'end': 28134.933, 'src': 'embed', 'start': 28104.292, 'weight': 1, 'content': [{'end': 28108.475, 'text': 'So, you can see that the residual sum of square of this line is 28.', 'start': 28104.292, 'duration': 4.183}, {'end': 28111.798, 'text': 'The residual sum of square of this line is 22.', 'start': 28108.475, 'duration': 3.323}, {'end': 28115.38, 'text': 'And the residual sum of square of this line is 24.', 'start': 28111.798, 'duration': 3.582}, {'end': 28120.084, 'text': 'So, because the residual sum of square of this middle line is the lowest.', 'start': 28115.38, 'duration': 4.704}, {'end': 28121.945, 'text': 'So, the residual sum of square of this line is 22.', 'start': 28120.104, 'duration': 1.841}, {'end': 28126.509, 'text': 'So, this will be your best fit line.', 'start': 28121.945, 'duration': 4.564}, {'end': 28134.933, 'text': 'So now we have understood what is the best fit line, and how can we find out our y from the best fit line,', 'start': 28127.742, 'duration': 7.191}], 'summary': 'Residual sum of square: 28, 22, 24; best fit line for y.', 'duration': 30.641, 'max_score': 28104.292, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts28104292.jpg'}, {'end': 28517.271, 'src': 'embed', 'start': 28486.603, 'weight': 0, 'content': [{'end': 28491.846, 'text': "In the first five records, you can't see any value of 4, so now we will extract it.", 'start': 28486.603, 'duration': 5.243}, {'end': 28496.648, 'text': 'First of all, I will write iris here, which is the name of the data frame.', 'start': 28491.866, 'duration': 4.782}, {'end': 28502.511, 'text': 'Then I will give a parenthesis and give the name of this column in single quotes, which will be sepal.', 'start': 28496.688, 'duration': 5.823}, {'end': 28517.271, 'text': 'So, I have given the name of the column here and the condition should be iris sepal width should be greater than 4.', 'start': 28508.089, 'duration': 9.182}], 'summary': 'Extract values where iris sepal width > 4', 'duration': 30.668, 'max_score': 28486.603, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts28486603.jpg'}, {'end': 28787.629, 'src': 'embed', 'start': 28758.451, 'weight': 2, 'content': [{'end': 28766.554, 'text': 'You can see that all the species that you can see here are of virginica.', 'start': 28758.451, 'duration': 8.103}, {'end': 28769.615, 'text': 'So these are all their species.', 'start': 28766.594, 'duration': 3.021}, {'end': 28774.777, 'text': 'So in this way, we can do a little bit of data manipulation or data wrangling.', 'start': 28769.635, 'duration': 5.142}, {'end': 28778.946, 'text': 'After this, we will do data visualization.', 'start': 28776.305, 'duration': 2.641}, {'end': 28784.008, 'text': 'If I want to do data visualization, I will need matplotlib or seaborn.', 'start': 28779.066, 'duration': 4.942}, {'end': 28785.868, 'text': 'These are visualization libraries.', 'start': 28784.028, 'duration': 1.84}, {'end': 28787.629, 'text': 'I will work with seaborn.', 'start': 28785.948, 'duration': 1.681}], 'summary': 'All species in the dataset are virginica, requiring data manipulation and visualization using seaborn.', 'duration': 29.178, 'max_score': 28758.451, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts28758451.jpg'}], 'start': 27538.639, 'title': 'Linear regression and data analysis', 'summary': 'Discusses the application of linear regression in real-life scenarios with an example of determining the relationship between gre score and cgpa, explains the concept of best fit line, delves into simple and multiple linear regression, covers data manipulation and visualization, and performs analysis using python and statistical tools.', 'chapters': [{'end': 27903.837, 'start': 27538.639, 'title': 'Linear regression in real life', 'summary': 'Discusses the application of linear regression in real-life scenarios, using the example of determining the relationship between gre score and cgpa of engineering students through data collection, scatterplot analysis, and the concept of linear regression, emphasizing the need for regression analysis to find the relationship between two variables.', 'duration': 365.198, 'highlights': ["The relationship between GRE score and CGPA is determined through data collection and scatterplot analysis, revealing a linear relationship where as the student's CGPA increases, the student's GRE score also increases.", 'Regression analysis is used to find the relationship between two variables, with CGPA being the independent variable and GRE score being the dependent variable, forming the foundation of regression analysis.', 'Linear regression is utilized to determine the relationship between two or more variables, with the dependent variable being continuous numerical, and is represented by the equation y = a + bx.']}, {'end': 28303.272, 'start': 27908.616, 'title': 'Linear regression and best fit line', 'summary': 'Explains the concept of best fit line in linear regression, emphasizing the importance of minimizing the sum of residual squares to determine the best fit line, and further delves into understanding simple linear regression and multiple linear regression with practical examples and equations.', 'duration': 394.656, 'highlights': ['The chapter emphasizes the importance of minimizing the sum of residual squares to determine the best fit line, showcasing the calculation of residual sum of squares for different lines and selecting the line with the lowest value (22) as the best fit line.', 'The concept of residual is explained as the difference between the actual values and the predicted values by the line, illustrating the calculation of residuals and its significance in finding the best fit line.', 'Practical example of using linear regression to predict GRE score based on CGPA, with the equation of the line (GRE = 261 + 6.8*CGPA) resulting in a predicted GRE score of 317.57 when CGPA is 8.32.', 'Introduction to multiple linear regression and its equation (Y = AX1 + BX2 + CX3 + DX4 + E), highlighting the presence of more than one independent variable and their coefficients in determining the dependent variable.']}, {'end': 28758.431, 'start': 28303.312, 'title': 'Data manipulation and linear regression in python', 'summary': 'Covers the process of loading the iris dataset, performing data manipulation, and applying conditions to extract specific records, resulting in observations such as the identification of species with sepal width greater than 4 and petal width more than 1, ultimately preparing for linear regression analysis.', 'duration': 455.119, 'highlights': ["The dataset 'Iris' is loaded using the pandas library in Python, and the first 5 records are displayed, containing columns such as sepal length, sepal width, petal length, petal width, and species.", "Records with sepal width greater than 4 are extracted, resulting in the identification of 3 records with sepal width greater than 4, all belonging to the species 'setosa'.", "Extraction of records with petal width more than 1 is performed, revealing 93 records with petal width greater than 1, all belonging to the species 'versicolor' and 'virginica'.", "An observation is made that all the species with petal width greater than 1 belong to 'versicolor' and 'virginica', with 'virginica' having more than 2 petal widths."]}, {'end': 29026.384, 'start': 28758.451, 'title': 'Data visualization with seaborn', 'summary': 'Covers data manipulation and visualization using seaborn and matplotlib, showcasing a scatterplot to illustrate the relationship between sepal length and petal length, and utilizing color to differentiate between species, revealing the distinct characteristics of each species.', 'duration': 267.933, 'highlights': ['Seaborn is a visualization library based on Matplotlib, enabling advanced data visualization techniques. It is utilized for creating a scatterplot to showcase the linear relationship between sepal length and petal length, and for distinguishing species by color, facilitating the identification of distinct characteristics of each species.', 'The scatterplot illustrates that the sepal and petal length of the Virginica species is the highest, followed by Versicolor, and the lowest being the Setosa species.']}], 'duration': 1487.745, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts27538639.jpg', 'highlights': ['Introduction to multiple linear regression and its equation (Y = AX1 + BX2 + CX3 + DX4 + E), highlighting the presence of more than one independent variable and their coefficients in determining the dependent variable.', "The relationship between GRE score and CGPA is determined through data collection and scatterplot analysis, revealing a linear relationship where as the student's CGPA increases, the student's GRE score also increases.", 'The chapter emphasizes the importance of minimizing the sum of residual squares to determine the best fit line, showcasing the calculation of residual sum of squares for different lines and selecting the line with the lowest value (22) as the best fit line.', "The dataset 'Iris' is loaded using the pandas library in Python, and the first 5 records are displayed, containing columns such as sepal length, sepal width, petal length, petal width, and species.", 'Seaborn is a visualization library based on Matplotlib, enabling advanced data visualization techniques. It is utilized for creating a scatterplot to showcase the linear relationship between sepal length and petal length, and for distinguishing species by color, facilitating the identification of distinct characteristics of each species.']}, {'end': 30569.55, 'segs': [{'end': 29725.28, 'src': 'embed', 'start': 29691.081, 'weight': 4, 'content': [{'end': 29695.203, 'text': 'If I want to divide it into training and testing again, I will have to use train test split.', 'start': 29691.081, 'duration': 4.122}, {'end': 29696.464, 'text': 'It will be x and y.', 'start': 29695.323, 'duration': 1.141}, {'end': 29705.068, 'text': 'And this time I am giving test size again because our sample should be the same.', 'start': 29696.464, 'duration': 8.604}, {'end': 29714.953, 'text': 'This time also I am giving test size 0.3.', 'start': 29705.228, 'duration': 9.725}, {'end': 29721.237, 'text': 'Means 30% of my records will be in testing set and rest 70% will be in training set.', 'start': 29714.953, 'duration': 6.284}, {'end': 29725.28, 'text': 'And it will give me 4 results as we saw earlier.', 'start': 29721.317, 'duration': 3.963}], 'summary': 'Using train test split with 30% test size for 70% training set.', 'duration': 34.199, 'max_score': 29691.081, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts29691081.jpg'}, {'end': 29915.259, 'src': 'embed', 'start': 29837.719, 'weight': 0, 'content': [{'end': 29844.042, 'text': 'You can clearly see that the second mean squared error is very less when you compare it with the first one.', 'start': 29837.719, 'duration': 6.323}, {'end': 29847.903, 'text': 'This means that the second model is much better than the first one.', 'start': 29844.062, 'duration': 3.841}, {'end': 29860.29, 'text': 'And this is also because in the first one you used sepal width as an independent variable.', 'start': 29852.845, 'duration': 7.445}, {'end': 29863.732, 'text': 'Here you are using three independent variables instead of one.', 'start': 29860.37, 'duration': 3.362}, {'end': 29870.697, 'text': 'So this has increased the accuracy of your model and the mean squared error has been reduced.', 'start': 29863.912, 'duration': 6.785}, {'end': 29873.098, 'text': 'Now we will see another case study here.', 'start': 29870.737, 'duration': 2.361}, {'end': 29882.004, 'text': 'So we have the data set of COVID-19 and we will see how COVID-19 has spread in different states in India.', 'start': 29873.138, 'duration': 8.866}, {'end': 29884.673, 'text': 'After this, we will also apply linear regression algorithm.', 'start': 29882.551, 'duration': 2.122}, {'end': 29888.636, 'text': 'So first of all, we have to import the required libraries.', 'start': 29884.713, 'duration': 3.923}, {'end': 29894.261, 'text': 'So here we have Pandas, Matplotlib, Seaborn.', 'start': 29888.736, 'duration': 5.525}, {'end': 29897.704, 'text': 'So we know Pandas is for data wrangling.', 'start': 29894.281, 'duration': 3.423}, {'end': 29900.327, 'text': 'Matplotlib and Seaborn we need for visualization.', 'start': 29897.864, 'duration': 2.463}, {'end': 29902.048, 'text': 'After this, date time.', 'start': 29900.427, 'duration': 1.621}, {'end': 29909.097, 'text': 'We need it because there are some date and time related columns in our data set.', 'start': 29903.516, 'duration': 5.581}, {'end': 29911.398, 'text': 'So we will have to do some conversion for them.', 'start': 29909.117, 'duration': 2.281}, {'end': 29913.058, 'text': 'So for that we will need this library.', 'start': 29911.418, 'duration': 1.64}, {'end': 29915.259, 'text': 'So we have imported NumPy here.', 'start': 29913.178, 'duration': 2.081}], 'summary': 'Using three independent variables increased model accuracy and reduced mean squared error. covid-19 spread analysis and linear regression were conducted using pandas, matplotlib, seaborn, and numpy libraries.', 'duration': 77.54, 'max_score': 29837.719, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts29837719.jpg'}, {'end': 30357.22, 'src': 'embed', 'start': 30324.601, 'weight': 5, 'content': [{'end': 30327.783, 'text': 'On 17th July 2020, 21, 000 cases were confirmed, 14, 000 cases were cured and 197 deaths.', 'start': 30324.601, 'duration': 3.182}, {'end': 30330.444, 'text': 'So we are getting all these interesting information here.', 'start': 30327.803, 'duration': 2.641}, {'end': 30352.075, 'text': 'After this, what I have to do is I have to sort the data according to the confirmed cases.', 'start': 30330.464, 'duration': 21.611}, {'end': 30356.259, 'text': 'Meaning, I have to know which state has the most confirmed cases till 17th July 2020.', 'start': 30352.116, 'duration': 4.143}, {'end': 30357.22, 'text': 'So, I will do today.sortValues.', 'start': 30356.259, 'duration': 0.961}], 'summary': 'On 17th july 2020, 21,000 cases confirmed, 14,000 cured, 197 deaths, sorting data for most confirmed cases by state.', 'duration': 32.619, 'max_score': 30324.601, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30324601.jpg'}, {'end': 30427.108, 'src': 'embed', 'start': 30393.777, 'weight': 7, 'content': [{'end': 30398.298, 'text': 'And I am storing this result in max confirmed cases.', 'start': 30393.777, 'duration': 4.521}, {'end': 30401.83, 'text': 'Then I am running the max confirmed cases here.', 'start': 30398.988, 'duration': 2.842}, {'end': 30405.172, 'text': 'And you are seeing that all this has been found here.', 'start': 30401.95, 'duration': 3.222}, {'end': 30412.477, 'text': 'So here you are seeing, the most confirmed cases till 17th July, that is in Maharashtra.', 'start': 30405.192, 'duration': 7.285}, {'end': 30416.239, 'text': 'So in Maharashtra, till 17th July 2020, you have almost 2 lakhs.', 'start': 30412.497, 'duration': 3.742}, {'end': 30416.62, 'text': '2,84, 000 cases.', 'start': 30416.259, 'duration': 0.361}, {'end': 30427.108, 'text': 'And in 2,84, 000 cases, 1,58, 000 were cured.', 'start': 30416.74, 'duration': 10.368}], 'summary': 'Maharashtra had almost 2.84 lakh confirmed cases by 17th july 2020, with 1.58 lakh cured.', 'duration': 33.331, 'max_score': 30393.777, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30393777.jpg'}, {'end': 30504.267, 'src': 'embed', 'start': 30471.215, 'weight': 6, 'content': [{'end': 30474.117, 'text': 'I have to extract them from the top 5 states.', 'start': 30471.215, 'duration': 2.902}, {'end': 30476.759, 'text': 'So here I have to write max confirmed cases.', 'start': 30474.137, 'duration': 2.622}, {'end': 30480.161, 'text': 'In this I am extracting 0 to 5.', 'start': 30477.239, 'duration': 2.922}, {'end': 30484.124, 'text': 'And I am storing them in top states confirmed.', 'start': 30480.161, 'duration': 3.963}, {'end': 30486.926, 'text': 'And here top states confirmed.', 'start': 30484.985, 'duration': 1.941}, {'end': 30489.748, 'text': 'Once I add another cell on top of this.', 'start': 30486.946, 'duration': 2.802}, {'end': 30494.772, 'text': 'And once we print top states confirmed.', 'start': 30489.928, 'duration': 4.844}, {'end': 30496.293, 'text': "And let's see what the result is.", 'start': 30494.792, 'duration': 1.501}, {'end': 30501.284, 'text': 'Now we will run it.', 'start': 30500.544, 'duration': 0.74}, {'end': 30504.267, 'text': 'As you can see we have extracted the top 5 records.', 'start': 30501.324, 'duration': 2.943}], 'summary': 'Extracted top 5 states with max confirmed cases.', 'duration': 33.052, 'max_score': 30471.215, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30471215.jpg'}], 'start': 29026.404, 'title': 'Implementing linear regression model', 'summary': 'Demonstrates implementing a linear regression model on a dataset, achieving a decrease in mean squared error from 0.841 to 0.11 by using three independent variables instead of one, and also discusses data visualization and covid-19 data analysis.', 'chapters': [{'end': 29211.035, 'start': 29026.404, 'title': 'Data visualization and linear regression', 'summary': 'Discusses the importance of data visualization in gaining insights, followed by the process of dividing a data frame into training and testing sets for applying linear regression algorithm using the sklearn library in python.', 'duration': 184.631, 'highlights': ['The importance of data visualization in gaining insights is emphasized, as it allows for easy understanding of the data and extraction of valuable insights.', 'The process of dividing a data frame into training and testing sets for applying linear regression algorithm using the sklearn library in Python is explained.', 'The use of the sklearn library for implementing machine learning models in Python is highlighted, including the ability to apply algorithms like linear regression, logistic regression, decision tree, and random forest.']}, {'end': 30231.944, 'start': 29211.055, 'title': 'Implementing linear regression model', 'summary': 'Demonstrates the process of implementing a linear regression model on a dataset to divide it into training and testing sets, fitting the model, predicting values, calculating mean squared error, and comparing the accuracy of two models with quantifiable data, achieving a decrease in mean squared error from 0.841 to 0.11 by using three independent variables instead of one.', 'duration': 1020.889, 'highlights': ['The process of implementing a linear regression model on a dataset to divide it into training and testing sets, fitting the model, predicting values, and calculating mean squared error, achieving a decrease in mean squared error from 0.841 to 0.11 by using three independent variables instead of one.', 'Dividing the data into training and testing sets with a test size of 30% resulting in 70% of the data frame going to the train set and 30% to the test set.', 'Importing the required libraries including Pandas, Matplotlib, Seaborn, date time, and NumPy for data wrangling, visualization, and date-related operations.']}, {'end': 30569.55, 'start': 30231.984, 'title': 'Data analysis: extracting and visualizing covid-19 data', 'summary': 'Demonstrates extracting and analyzing covid-19 data by date, extracting top states with the highest confirmed cases, and creating a bar plot for visualization.', 'duration': 337.566, 'highlights': ['The data is structured by date, and the last date in the data frame is 17th July 2020, with detailed records of COVID-19 cases for various states.', 'The highest confirmed cases till 17th July 2020 were found in Maharashtra with almost 2,84,000 cases, followed by Tamil Nadu with 1,56,000 cases, and the number of deaths was 2,236.', 'Extraction of the top 5 states with the most confirmed cases: Maharashtra, Tamil Nadu, Delhi, Karnataka, and Gujarat, with their corresponding COVID-19 records.', 'The demonstration includes the use of seaborn for creating a bar plot to visualize the COVID-19 data for the top 5 states, setting the size of the figure and generating the bar plot.']}], 'duration': 1543.146, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts29026404.jpg', 'highlights': ['Achieved decrease in mean squared error from 0.841 to 0.11 by using three independent variables', 'Importance of data visualization in gaining insights is emphasized', 'Demonstration of implementing a linear regression model on a dataset', 'Use of sklearn library for implementing machine learning models in Python', 'Dividing the data into training and testing sets with a test size of 30%', 'Detailed records of COVID-19 cases for various states till 17th July 2020', 'Extraction of the top 5 states with the most confirmed COVID-19 cases', 'Highest confirmed cases till 17th July 2020 were found in Maharashtra with almost 2,84,000 cases']}, {'end': 32130.244, 'segs': [{'end': 30673.505, 'src': 'embed', 'start': 30646.171, 'weight': 0, 'content': [{'end': 30651.635, 'text': 'So here you can clearly see that in Maharashtra, there are almost 2 lakh confirmed cases.', 'start': 30646.171, 'duration': 5.464}, {'end': 30657.953, 'text': 'There are less than 50, 000 confirmed cases in Gujarat.', 'start': 30654.21, 'duration': 3.743}, {'end': 30661.836, 'text': 'So when you look at any graph, it becomes very easy to get information from the graph.', 'start': 30657.973, 'duration': 3.863}, {'end': 30666.44, 'text': 'So we have done this for the confirmed cases.', 'start': 30662.096, 'duration': 4.344}, {'end': 30673.505, 'text': 'In the same way, what I want to do is, I want to do the number of deaths as well.', 'start': 30666.54, 'duration': 6.965}], 'summary': 'Maharashtra has nearly 2 lakh cases, gujarat has less than 50,000.', 'duration': 27.334, 'max_score': 30646.171, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30646171.jpg'}, {'end': 30824.836, 'src': 'embed', 'start': 30795.392, 'weight': 2, 'content': [{'end': 30797.853, 'text': 'Then after this I am making a bar plot.', 'start': 30795.392, 'duration': 2.461}, {'end': 30803.197, 'text': 'So to make a bar plot again here is sns dot bar plot.', 'start': 30797.893, 'duration': 5.304}, {'end': 30806.299, 'text': 'This time again it will be state on x.', 'start': 30803.277, 'duration': 3.022}, {'end': 30811.022, 'text': 'But on y instead of confirmed I am mapping the deaths column.', 'start': 30806.299, 'duration': 4.723}, {'end': 30816.806, 'text': 'And where is this data coming from? Data is coming here top states death.', 'start': 30811.122, 'duration': 5.684}, {'end': 30821.454, 'text': 'Again, the color of the bars will be determined by the state column.', 'start': 30817.273, 'duration': 4.181}, {'end': 30824.836, 'text': 'And now we will run it.', 'start': 30821.534, 'duration': 3.302}], 'summary': 'Creating a bar plot with deaths data by state from top states dataset.', 'duration': 29.444, 'max_score': 30795.392, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30795392.jpg'}, {'end': 30913.105, 'src': 'embed', 'start': 30885.058, 'weight': 3, 'content': [{'end': 30887.9, 'text': 'And this is our result here.', 'start': 30885.058, 'duration': 2.842}, {'end': 30892.543, 'text': 'So, you can see that the most Cured cases are actually in Maharashtra.', 'start': 30887.98, 'duration': 4.563}, {'end': 30896.538, 'text': 'So, in Maharashtra, you can see that it is actually 1,58, 000.', 'start': 30893.697, 'duration': 2.841}, {'end': 30899.88, 'text': 'So, there are 1,58, 000 cured cases in Maharashtra by 17 July.', 'start': 30896.538, 'duration': 3.342}, {'end': 30901.74, 'text': 'Then, there is Tamil Nadu.', 'start': 30899.92, 'duration': 1.82}, {'end': 30903.081, 'text': 'So, in Tamil Nadu, it is actually 1,07, 000.', 'start': 30901.76, 'duration': 1.321}, {'end': 30904.401, 'text': 'Then, there is Delhi.', 'start': 30903.081, 'duration': 1.32}, {'end': 30906.162, 'text': 'So, in Delhi, there are 97, 000 cured cases.', 'start': 30904.441, 'duration': 1.721}, {'end': 30913.105, 'text': 'Again, what I have to do is, I am extracting the top 5 states where there are the most cured cases.', 'start': 30906.222, 'duration': 6.883}], 'summary': 'Maharashtra has the highest number of cured cases, 1,58,000, followed by tamil nadu with 1,07,000 and delhi with 97,000 by 17 july.', 'duration': 28.047, 'max_score': 30885.058, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30885058.jpg'}, {'end': 31026.018, 'src': 'embed', 'start': 30999.335, 'weight': 1, 'content': [{'end': 31007.198, 'text': 'In Maharashtra, on 9th March, there were 2 confirmed cases and on 17th July, there were 284, 000 cases.', 'start': 30999.335, 'duration': 7.863}, {'end': 31013.013, 'text': 'March, April, May, June, July.', 'start': 31011.132, 'duration': 1.881}, {'end': 31015.234, 'text': 'In 5 months, you can see how many cases have increased.', 'start': 31013.033, 'duration': 2.201}, {'end': 31019.956, 'text': 'In 5 months, 2,80, 000 cases have come in Maharashtra.', 'start': 31015.274, 'duration': 4.682}, {'end': 31026.018, 'text': 'So, you are getting all the information and insights from this data frame.', 'start': 31020.056, 'duration': 5.962}], 'summary': 'Maharashtra saw a surge from 2 to 284,000 covid-19 cases in 5 months.', 'duration': 26.683, 'max_score': 30999.335, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30999335.jpg'}, {'end': 31262.268, 'src': 'embed', 'start': 31238.548, 'weight': 4, 'content': [{'end': 31245.79, 'text': 'So it seems that the state of Kerala has managed better than the state of Maharashtra due to the spread of the pandemic.', 'start': 31238.548, 'duration': 7.242}, {'end': 31256.083, 'text': 'So in Maharashtra, from March The data from March to July was almost 200, 000 cases.', 'start': 31245.81, 'duration': 10.273}, {'end': 31258.325, 'text': 'In Kerala, Jan was the first case.', 'start': 31256.124, 'duration': 2.201}, {'end': 31260.727, 'text': 'And from 30 Jan to 17 July, the controlled data has increased.', 'start': 31258.345, 'duration': 2.382}, {'end': 31262.268, 'text': 'So, till 17 July, there are 10, 275 confirmed cases.', 'start': 31260.807, 'duration': 1.461}], 'summary': 'Kerala managed pandemic better than maharashtra, with 10,275 cases by july 17 compared to nearly 200,000 in maharashtra from march to july.', 'duration': 23.72, 'max_score': 31238.548, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts31238548.jpg'}, {'end': 31336.227, 'src': 'embed', 'start': 31308.477, 'weight': 5, 'content': [{'end': 31313.278, 'text': 'There are not many confirmed cases in Kerala till mid-May.', 'start': 31308.477, 'duration': 4.801}, {'end': 31316.119, 'text': 'From mid-May, the spike has started here.', 'start': 31313.298, 'duration': 2.821}, {'end': 31322.521, 'text': 'From mid-May, the incremental is increasing exponentially in Kerala.', 'start': 31316.159, 'duration': 6.362}, {'end': 31326.362, 'text': 'Similarly, I want to see the number of deaths.', 'start': 31322.741, 'duration': 3.621}, {'end': 31330.263, 'text': 'I have mapped the dates on the X-axis and the deaths on the Y-axis.', 'start': 31326.382, 'duration': 3.881}, {'end': 31336.227, 'text': 'And these two columns are coming from the Kerala object and its color is red.', 'start': 31332.225, 'duration': 4.002}], 'summary': 'Kerala saw a spike in confirmed cases and deaths from mid-may.', 'duration': 27.75, 'max_score': 31308.477, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts31308477.jpg'}, {'end': 31457.32, 'src': 'embed', 'start': 31425.593, 'weight': 6, 'content': [{'end': 31429.134, 'text': 'So now we will finally implement our linear regression model.', 'start': 31425.593, 'duration': 3.541}, {'end': 31435.255, 'text': 'So if I have to implement a linear regression model, then I will have to divide my data into training and testing sets.', 'start': 31429.274, 'duration': 5.981}, {'end': 31441.556, 'text': 'So for that I am importing the train test split from sklearn.modelselection.import,', 'start': 31435.275, 'duration': 6.281}, {'end': 31453.557, 'text': 'and I will apply linear regression algorithm on Maharashtra dataframe.', 'start': 31446.75, 'duration': 6.807}, {'end': 31455.258, 'text': 'Let me show it again.', 'start': 31453.577, 'duration': 1.681}, {'end': 31457.32, 'text': 'This is our Maharashtra dataframe.', 'start': 31455.298, 'duration': 2.022}], 'summary': 'Implementing linear regression model on maharashtra dataframe', 'duration': 31.727, 'max_score': 31425.593, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts31425593.jpg'}, {'end': 32033.366, 'src': 'embed', 'start': 31997.637, 'weight': 7, 'content': [{'end': 32010.629, 'text': 'In this example, the classification is either India will win the match or India will lose the match.', 'start': 31997.637, 'duration': 12.992}, {'end': 32014.293, 'text': 'In such situations, logistic regression is used.', 'start': 32010.709, 'duration': 3.584}, {'end': 32017.298, 'text': 'So, we understand logistic regression as a curve.', 'start': 32015.117, 'duration': 2.181}, {'end': 32025.102, 'text': 'So, the curve you are seeing here, we call this curve as a sigmoid curve or S-curve.', 'start': 32017.338, 'duration': 7.764}, {'end': 32033.366, 'text': 'And in such situations where we are doing classification or binary classification.', 'start': 32025.282, 'duration': 8.084}], 'summary': 'Logistic regression is used for binary classification in this example.', 'duration': 35.729, 'max_score': 31997.637, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts31997637.jpg'}], 'start': 30569.59, 'title': 'Covid-19 data analysis', 'summary': "Covers visualization of covid-19 cases by state, with maharashtra having the highest number of cases at almost 2 lakh, along with analysis of covid-19 cases, recoveries, and deaths in maharashtra, kerala's data analysis, and the transition from linear to logistic regression for data analysis.", 'chapters': [{'end': 30732.895, 'start': 30569.59, 'title': 'Bar plot of covid-19 cases', 'summary': 'Demonstrates the creation of a bar plot to visualize the distribution of confirmed covid-19 cases by state, with maharashtra having the highest number of cases at almost 2 lakh, followed by tamil nadu, delhi, karnataka, and gujarat with less than 50,000 confirmed cases, and also illustrates the process of sorting and visualizing the number of deaths by state.', 'duration': 163.305, 'highlights': ['Maharashtra has almost 2 lakh confirmed cases, followed by Tamil Nadu, Delhi, Karnataka, and Gujarat with less than 50,000 confirmed cases', 'Demonstrates the process of sorting and visualizing the number of deaths by state']}, {'end': 31174.585, 'start': 30732.955, 'title': 'Covid-19 analysis in maharashtra', 'summary': 'Provides an analysis of covid-19 cases in maharashtra till 17th july 2020, highlighting that maharashtra had the most confirmed cases and deaths, with over 1,58,000 cured cases, and a significant increase in cases and deaths from 1st may to 22nd july.', 'duration': 441.63, 'highlights': ['Maharashtra had the most confirmed cases and deaths, with over 1,58,000 cured cases as of 17th July 2020.', 'Significant increase in cases and deaths in Maharashtra from 1st May to 22nd July.', 'Visualization of COVID-19 data through bar plots and line plots for Maharashtra.']}, {'end': 31628.181, 'start': 31184.158, 'title': 'Data analysis and linear regression', 'summary': "Covers the analysis of covid-19 data for kerala and maharashtra, highlighting kerala's better management with 10,275 confirmed cases till 17th july and the implementation of a linear regression model on maharashtra's data.", 'duration': 444.023, 'highlights': ['Kerala managed 10,275 confirmed cases till 17th July, indicating better pandemic control than Maharashtra with almost 200,000 cases from March to July.', 'Exponential increase in confirmed cases and deaths observed in Kerala and Jammu and Kashmir from mid-May, indicating a significant spike in the spread of the pandemic.', "Implementation of linear regression model on Maharashtra's COVID-19 data, including division into training and testing sets with a 70%-30% split."]}, {'end': 32130.244, 'start': 31628.281, 'title': 'Logistic regression in data analysis', 'summary': 'Discusses the application of linear regression and the transition to logistic regression in analyzing data, emphasizing the limitations of linear regression and the suitability of logistic regression for binary classification, demonstrating the use of a sigmoid curve to predict the probability of india winning a match based on runs scored by virat kohli.', 'duration': 501.963, 'highlights': ['Logistic regression is used for binary classification where there are only two categories, and a sigmoid curve is used to predict the probability of India winning a match based on runs scored by Virat Kohli.', "Linear regression is limited in situations where classification is needed, as it cannot predict binary outcomes effectively, as demonstrated in the case of predicting India's win or loss in a cricket match based on runs scored by Virat Kohli.", "Explanation of the linear regression model's inadequacy in predicting binary outcomes, such as win or loss in a cricket match based on runs, due to its inability to fit a straight line for binary classification."]}], 'duration': 1560.654, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts30569590.jpg', 'highlights': ['Maharashtra has almost 2 lakh confirmed cases, followed by Tamil Nadu, Delhi, Karnataka, and Gujarat with less than 50,000 confirmed cases', 'Significant increase in cases and deaths in Maharashtra from 1st May to 22nd July', 'Demonstrates the process of sorting and visualizing the number of deaths by state', 'Maharashtra had the most confirmed cases and deaths, with over 1,58,000 cured cases as of 17th July 2020', 'Kerala managed 10,275 confirmed cases till 17th July, indicating better pandemic control than Maharashtra with almost 200,000 cases from March to July', 'Exponential increase in confirmed cases and deaths observed in Kerala and Jammu and Kashmir from mid-May, indicating a significant spike in the spread of the pandemic', "Implementation of linear regression model on Maharashtra's COVID-19 data, including division into training and testing sets with a 70%-30% split", 'Logistic regression is used for binary classification where there are only two categories, and a sigmoid curve is used to predict the probability of India winning a match based on runs scored by Virat Kohli', "Linear regression is limited in situations where classification is needed, as it cannot predict binary outcomes effectively, as demonstrated in the case of predicting India's win or loss in a cricket match based on runs scored by Virat Kohli"]}, {'end': 35246.856, 'segs': [{'end': 32256.998, 'src': 'embed', 'start': 32221.124, 'weight': 0, 'content': [{'end': 32224.725, 'text': 'Now let us see the equation of sigmoid curve.', 'start': 32221.124, 'duration': 3.601}, {'end': 32229.287, 'text': 'The formula of S curve is e power x upon 1 plus e power x.', 'start': 32224.805, 'duration': 4.482}, {'end': 32242.654, 'text': 'As your linear regression formula is y is equal to mx plus c, similarly this formula of logistic regression is there.', 'start': 32234.751, 'duration': 7.903}, {'end': 32244.854, 'text': 'e power x upon 1 plus e power x.', 'start': 32242.754, 'duration': 2.1}, {'end': 32252.617, 'text': 'So I will give you an example of this logistic regression or sigmoid curve in excel sheet.', 'start': 32244.854, 'duration': 7.763}, {'end': 32256.998, 'text': 'So here I have opened my excel sheet.', 'start': 32253.077, 'duration': 3.921}], 'summary': 'The transcript discusses the formula of the sigmoid curve, e^x / (1 + e^x), and its application in logistic regression, with a practical example in an excel sheet.', 'duration': 35.874, 'max_score': 32221.124, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts32221124.jpg'}, {'end': 33631.082, 'src': 'embed', 'start': 33597.048, 'weight': 1, 'content': [{'end': 33604.45, 'text': 'If I compare it with my original data frame, then out of the 10000 records in the original data frame, there are only 333 defaulters.', 'start': 33597.048, 'duration': 7.402}, {'end': 33609.491, 'text': 'But if I look at my outliers, then the percentage of defaulters is very high.', 'start': 33604.53, 'duration': 4.961}, {'end': 33615.152, 'text': 'Outliers have 31 outliers or 31 borrowers, out of which 26 borrowers will be defaulters.', 'start': 33609.551, 'duration': 5.601}, {'end': 33631.082, 'text': 'So, because this is the situation, I cannot directly remove my outliers.', 'start': 33627.52, 'duration': 3.562}], 'summary': 'Out of 10000 records, 333 are defaulters; 26 out of 31 outliers are defaulters, indicating high risk.', 'duration': 34.034, 'max_score': 33597.048, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts33597048.jpg'}, {'end': 33999.836, 'src': 'embed', 'start': 33974.499, 'weight': 4, 'content': [{'end': 33979.383, 'text': 'You can see, this is my original training set, this is testing set.', 'start': 33974.499, 'duration': 4.884}, {'end': 33980.984, 'text': 'And this is stratified.', 'start': 33979.863, 'duration': 1.121}, {'end': 33986.928, 'text': 'Means, our defaulters, defaulters both have only 3%.', 'start': 33981.464, 'duration': 5.464}, {'end': 33988.369, 'text': 'And not defaulters both have 97%.', 'start': 33986.928, 'duration': 1.441}, {'end': 33994.053, 'text': 'So, it is not like there are more defaulters in training set and less defaulters in test set.', 'start': 33988.369, 'duration': 5.684}, {'end': 33998.375, 'text': 'We have sampled equally in both.', 'start': 33995.973, 'duration': 2.402}, {'end': 33999.836, 'text': 'After this,', 'start': 33998.455, 'duration': 1.381}], 'summary': 'Training and testing sets are stratified with 3% defaulters and 97% non-defaulters, ensuring equal representation.', 'duration': 25.337, 'max_score': 33974.499, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts33974499.jpg'}, {'end': 34091.512, 'src': 'embed', 'start': 34059.355, 'weight': 2, 'content': [{'end': 34069.022, 'text': 'Means, if you see here, then actually your defaulters are 97% and the defaulters are 3%.', 'start': 34059.355, 'duration': 9.667}, {'end': 34075.066, 'text': 'So if we directly use SMOTE, it will divide them in 50-50 ratio.', 'start': 34069.022, 'duration': 6.044}, {'end': 34079.649, 'text': 'But what I am doing here is, sampling strategy is equal to 75.', 'start': 34075.926, 'duration': 3.723}, {'end': 34083.749, 'text': 'So 75% means 3 by 4.', 'start': 34079.649, 'duration': 4.1}, {'end': 34087.71, 'text': 'So, what does 3 by 4 mean? For every 4 categories, you will get 3 less data.', 'start': 34083.749, 'duration': 3.961}, {'end': 34091.512, 'text': 'So, if we have 4 non-defaulters here, it will add 3 defaulters for them.', 'start': 34087.75, 'duration': 3.762}], 'summary': 'Using a sampling strategy of 75% to balance defaulters to non-defaulters in a 3:4 ratio.', 'duration': 32.157, 'max_score': 34059.355, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts34059355.jpg'}, {'end': 34525.348, 'src': 'embed', 'start': 34493.552, 'weight': 3, 'content': [{'end': 34498.897, 'text': 'I want to predict on the basis of past or present time that how dependent variable will change in future.', 'start': 34493.552, 'duration': 5.345}, {'end': 34507.126, 'text': 'These are the basics of time series.', 'start': 34505.063, 'duration': 2.063}, {'end': 34515.036, 'text': 'And here we have to keep in mind that when we talk about time, especially in time series, it should be in regular intervals.', 'start': 34507.907, 'duration': 7.129}, {'end': 34525.348, 'text': 'Suppose I have some data related to time, so if one data point is from 2021, The second data point is from 2022.', 'start': 34515.076, 'duration': 10.272}], 'summary': 'Predict future dependent variable based on time series data with regular intervals.', 'duration': 31.796, 'max_score': 34493.552, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts34493552.jpg'}], 'start': 32130.244, 'title': 'Logistic regression, outliers, and time series analysis', 'summary': 'Covers logistic regression for classification, including its application in determining the relationship between smoking and cancer. it also discusses the identification and handling of outliers in financial data, with 83% defaulters in outliers compared to 3.33% in the original dataset. additionally, the chapter introduces time series analysis, emphasizing the need for forecasting in business decision-making and the importance of consistency and proper ordering of data points.', 'chapters': [{'end': 32402.373, 'start': 32130.244, 'title': 'Logistic regression and sigmoid curve', 'summary': 'Explains the concept of logistic regression for classification, highlighting its application in determining the relationship between smoking and cancer, and demonstrates the construction of a sigmoid curve using the formula e^x / (1+ e^x) in an excel sheet.', 'duration': 272.129, 'highlights': ['The formula of the sigmoid curve is e^x / (1 + e^x), which is used to establish the relationship between independent and dependent variables, such as smoking and cancer, for classification purposes.', 'The example demonstrates the implementation of the sigmoid curve in an Excel sheet to depict the relationship between the values of x and the corresponding probabilities of y, illustrating the practical application of logistic regression for classification.', 'Logistic regression is utilized for binary classification, as it generates only two categories, yes or no, based on the categorical nature of the dependent variable, making it suitable for scenarios like determining the likelihood of a person having cancer based on smoking habits.', 'The chapter also covers the fundamental concept of logistic regression, emphasizing its role in classification tasks and its distinction from linear regression, providing a comprehensive understanding of its application in data analysis.']}, {'end': 33370.657, 'start': 32402.373, 'title': 'Logistic regression for credit risk analysis', 'summary': 'Covers the implementation of logistic regression with python for credit risk analysis using a financial dataset, including the importation of required libraries, exploration of dataset columns, univariate and bivariate analysis, and the absence of null values in the dataset.', 'duration': 968.284, 'highlights': ['The chapter covers the implementation of logistic regression with Python for credit risk analysis using a financial dataset, including the importation of required libraries, exploration of dataset columns, univariate and bivariate analysis, and the absence of null values in the dataset.', "The dataset consists of 10,000 records with 4 columns, and the credit risk analysis involves understanding the 'default' column to determine if a person will be able to repay their loan, and the 'student' column to identify if the person is a student or not.", "The numerical columns 'balance' and 'income' are analyzed, revealing insights such as the presence of outliers, the range of outstanding balances, the average and extreme values of income, and the creation of boxplots to illustrate the distribution and summary statistics of these columns.", 'The count plots and value counts method provide insights into the frequency and percentage distribution of student and default categories, with approximately 70% of the borrowers being students and 96% being non-defaulters.', "The bivariate analysis includes the creation of boxplots to understand the relationship between default and numerical columns (balance, income) and a cross-tabulation to examine the joint distribution between the 'student' and 'default' columns.", "The heatmap analysis reveals a lack of strong correlation between the numerical columns 'balance' and 'income', and it is confirmed that the dataset contains no null values across all four columns."]}, {'end': 33655.915, 'start': 33370.677, 'title': 'Handling outliers in financial data', 'summary': 'Discusses the identification and handling of outliers in financial data, including the calculation of interquartile range, determination of outliers, and their impact on default rates, with 83% defaulters in outliers compared to 3.33% in the original dataset, leading to the decision of not directly removing the outliers.', 'duration': 285.238, 'highlights': ['The interquartile range is calculated to determine the outliers, with a specific focus on the balance column and its quartiles Q1 and Q3, leading to the identification of the upper limit as 2193.', '31 outliers are identified in the dataset, with 83% of them being defaulters, compared to only 3.33% defaulters in the original dataset, indicating a significant impact of outliers on default rates.', 'The decision to not directly remove the outliers is made, and instead, the values of outliers are set equal to the maximum value to address the high percentage of defaulters within the outliers.']}, {'end': 34282.714, 'start': 33657.841, 'title': 'Logistic regression algorithm & model evaluation', 'summary': 'Covers preprocessing steps such as outlier removal, categorical to numeric value conversion, train-test split with stratified sampling, and smote oversampling technique application for logistic regression algorithm, resulting in a balanced confusion matrix and model accuracy assessment.', 'duration': 624.873, 'highlights': ['The chapter covers preprocessing steps such as outlier removal, categorical to numeric value conversion, train-test split with stratified sampling, and SMOTE oversampling technique application for logistic regression algorithm.', 'The stratified sampling is used due to the imbalanced dataset, with only 3% defaulters, resulting in a balanced distribution of defaulters and non-defaulters in the training and test sets.', 'The application of SMOTE oversampling technique with a sampling strategy of 75% results in a balanced distribution of defaulters and non-defaulters, addressing the issue of imbalanced data.', "After fitting the logistic regression algorithm on the training set, a confusion matrix is used to assess the model's accuracy, with the left diagonal representing correctly classified values and the right diagonal representing incorrectly classified values."]}, {'end': 35246.856, 'start': 34282.754, 'title': 'Time series analysis basics', 'summary': 'Introduces time series analysis, explaining the need for forecasting in business decision-making, the basics of time series, the importance of regular intervals in time series data, and the components of time series including trend and seasonality. it also emphasizes the importance of consistency and proper ordering of data points in time series analysis.', 'duration': 964.102, 'highlights': ['Time series analysis is crucial for forecasting in business, allowing companies to make informed decisions and manage budgets based on future market situations.', 'The importance of regular intervals in time series data is emphasized, with examples of yearly, quarterly, monthly, weekly, daily, and hourly intervals provided.', 'The components of time series, including trend and seasonality, are introduced, along with the distinction between systematic and irregular components.']}], 'duration': 3116.612, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts32130244.jpg', 'highlights': ['Logistic regression used for binary classification, e^x / (1 + e^x) formula applied for relationship determination.', 'Financial dataset analysis reveals 83% defaulters in outliers compared to 3.33% in original dataset.', 'SMOTE oversampling technique with 75% sampling strategy results in balanced distribution of defaulters and non-defaulters.', 'Time series analysis crucial for forecasting in business, emphasizing the importance of regular intervals.', 'Stratified sampling used for imbalanced dataset, resulting in balanced distribution of defaulters and non-defaulters.']}, {'end': 36716.537, 'segs': [{'end': 35282.526, 'src': 'embed', 'start': 35246.976, 'weight': 1, 'content': [{'end': 35254.56, 'text': 'If we talk about 40 years or 50 years, there will be some seasonality within each year.', 'start': 35246.976, 'duration': 7.584}, {'end': 35261.324, 'text': 'If we consider this as yearly data from 2000 to 2020, there will be some seasonal component within each year.', 'start': 35254.6, 'duration': 6.724}, {'end': 35274.877, 'text': 'As we saw earlier, you will see some ups and some downs every year.', 'start': 35268.629, 'duration': 6.248}, {'end': 35276.839, 'text': 'Similarly, we have this graph.', 'start': 35274.957, 'duration': 1.882}, {'end': 35279.442, 'text': 'You can see some ups and some downs in it.', 'start': 35276.859, 'duration': 2.583}, {'end': 35282.526, 'text': 'And it is consistent every year.', 'start': 35280.003, 'duration': 2.523}], 'summary': 'Seasonal fluctuations observed in yearly data from 2000 to 2020.', 'duration': 35.55, 'max_score': 35246.976, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35246976.jpg'}, {'end': 35378.02, 'src': 'embed', 'start': 35349.235, 'weight': 2, 'content': [{'end': 35352.436, 'text': 'In this, decomposition is very important.', 'start': 35349.235, 'duration': 3.201}, {'end': 35357.08, 'text': 'Now we will see how we can actually do decomposition.', 'start': 35353.917, 'duration': 3.163}, {'end': 35362.506, 'text': 'So we have two types of decomposition models in the time series.', 'start': 35357.841, 'duration': 4.665}, {'end': 35365.769, 'text': 'One is additive and the other is multiplicative.', 'start': 35362.646, 'duration': 3.123}, {'end': 35372.976, 'text': 'So we know the basics of decomposition that we divide our data points into different components.', 'start': 35366.529, 'duration': 6.447}, {'end': 35378.02, 'text': 'What are those different components? Trend, seasonality and error.', 'start': 35372.996, 'duration': 5.024}], 'summary': 'Decomposition in time series has two models: additive and multiplicative, dividing data into trend, seasonality, and error components.', 'duration': 28.785, 'max_score': 35349.235, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35349235.jpg'}, {'end': 35757.935, 'src': 'embed', 'start': 35729.275, 'weight': 3, 'content': [{'end': 35734.08, 'text': 'Then you will add some residuals and irregularities to it.', 'start': 35729.275, 'duration': 4.805}, {'end': 35739.386, 'text': "That's why decomposition is very important.", 'start': 35734.26, 'duration': 5.126}, {'end': 35742.449, 'text': 'Now we will see a demo of time series with python.', 'start': 35739.446, 'duration': 3.003}, {'end': 35747.187, 'text': 'First of all, I need to import the required libraries.', 'start': 35745.046, 'duration': 2.141}, {'end': 35749.349, 'text': 'I need NumPy and Pandas.', 'start': 35747.228, 'duration': 2.121}, {'end': 35753.292, 'text': 'NumPy is used for numerical computation.', 'start': 35749.509, 'duration': 3.783}, {'end': 35755.033, 'text': 'Pandas is used for data wrangling.', 'start': 35753.332, 'duration': 1.701}, {'end': 35757.935, 'text': 'For visualization, we need matplotlib.', 'start': 35755.433, 'duration': 2.502}], 'summary': 'Demo of time series with python using numpy, pandas, and matplotlib.', 'duration': 28.66, 'max_score': 35729.275, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35729275.jpg'}, {'end': 35818.09, 'src': 'embed', 'start': 35789.518, 'weight': 10, 'content': [{'end': 35791.962, 'text': 'So, first of all, I have to import all these libraries.', 'start': 35789.518, 'duration': 2.444}, {'end': 35794.084, 'text': 'And it will take some time to import here.', 'start': 35791.982, 'duration': 2.102}, {'end': 35808.821, 'text': 'Then after importing, my data frame So here I am using airpassenger.csv and this is the most common data frame whenever we talk about time series.', 'start': 35794.104, 'duration': 14.717}, {'end': 35812.144, 'text': 'So for data wrangling we have iris which is very common.', 'start': 35808.841, 'duration': 3.303}, {'end': 35818.09, 'text': 'Similarly whenever we talk about time series then for that airpassenger.csv is used.', 'start': 35812.564, 'duration': 5.526}], 'summary': 'Importing libraries and using airpassenger.csv for time series data analysis.', 'duration': 28.572, 'max_score': 35789.518, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35789518.jpg'}, {'end': 35922.938, 'src': 'embed', 'start': 35886.162, 'weight': 7, 'content': [{'end': 35889.704, 'text': 'So, I will set parseDates is equal to year month.', 'start': 35886.162, 'duration': 3.542}, {'end': 35897.929, 'text': 'So, with this attribute, I am telling this readCSU method that this column is actually of date time.', 'start': 35889.724, 'duration': 8.205}, {'end': 35909.795, 'text': "So, when you are reading it, don't read it like an object, read it like a date time.", 'start': 35903.453, 'duration': 6.342}, {'end': 35916.597, 'text': 'So, parseDates is equal to year month set and I am storing this file in df1.', 'start': 35910.495, 'duration': 6.102}, {'end': 35920.638, 'text': 'So, I have loaded it like this.', 'start': 35916.637, 'duration': 4.001}, {'end': 35922.938, 'text': 'Now, I am running df1.dtypes.', 'start': 35920.658, 'duration': 2.28}], 'summary': 'Setting parsedates to year month for reading column as date time.', 'duration': 36.776, 'max_score': 35886.162, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35886162.jpg'}, {'end': 35989.392, 'src': 'embed', 'start': 35959.497, 'weight': 8, 'content': [{'end': 35960.558, 'text': 'Time should be our index.', 'start': 35959.497, 'duration': 1.061}, {'end': 35962.321, 'text': 'So, I will do index call is equal to year month.', 'start': 35960.598, 'duration': 1.723}, {'end': 35966.385, 'text': 'So, this column of year month will be treated as index.', 'start': 35962.521, 'duration': 3.864}, {'end': 35978.224, 'text': 'This time, I have three parameters in pd.read.csv.', 'start': 35974.701, 'duration': 3.523}, {'end': 35984.608, 'text': 'First is the name of my csv file which is airpassenger.csv.', 'start': 35978.264, 'duration': 6.344}, {'end': 35989.392, 'text': 'After that, I have to tell that this column is actually of date type.', 'start': 35985.289, 'duration': 4.103}], 'summary': 'Creating a time series index using year and month for the airpassenger.csv file.', 'duration': 29.895, 'max_score': 35959.497, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35959497.jpg'}, {'end': 36156.179, 'src': 'embed', 'start': 36121.046, 'weight': 9, 'content': [{'end': 36125.33, 'text': 'In 1952, you will see that we are getting data points in January, February and March.', 'start': 36121.046, 'duration': 4.284}, {'end': 36133.435, 'text': 'After this, if I want to extract a specific data point, I can do that too.', 'start': 36128.63, 'duration': 4.805}, {'end': 36138.02, 'text': 'So, from this data frame, if I want a 1960 record in the first, then I will do df1.loc.', 'start': 36133.455, 'duration': 4.565}, {'end': 36155.158, 'text': 'If I want an exact value, I am using LOC to extract the exact value.', 'start': 36149.873, 'duration': 5.285}, {'end': 36156.179, 'text': 'Let me run it.', 'start': 36155.178, 'duration': 1.001}], 'summary': 'Data from 1952 reveals data points in jan, feb, and mar. specific records can be extracted using loc.', 'duration': 35.133, 'max_score': 36121.046, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts36121046.jpg'}, {'end': 36270.268, 'src': 'embed', 'start': 36199.04, 'weight': 4, 'content': [{'end': 36200.721, 'text': 'So df1.plot, this is my data frame.', 'start': 36199.04, 'duration': 1.681}, {'end': 36202.002, 'text': 'I am plotting it.', 'start': 36201.161, 'duration': 0.841}, {'end': 36203.483, 'text': 'Then I am just showing it.', 'start': 36202.022, 'duration': 1.461}, {'end': 36204.864, 'text': 'So I will run it.', 'start': 36203.803, 'duration': 1.061}, {'end': 36206.665, 'text': 'So here I have made this beautiful plot.', 'start': 36204.884, 'duration': 1.781}, {'end': 36208.326, 'text': 'You can see it is going from 1949 to 1960-61.', 'start': 36206.685, 'duration': 1.641}, {'end': 36217.653, 'text': 'You are seeing an upward trend here.', 'start': 36216.352, 'duration': 1.301}, {'end': 36219.234, 'text': 'We have a trend and that trend is upward.', 'start': 36217.713, 'duration': 1.521}, {'end': 36221.995, 'text': 'So from 1949 to 1960, the number of passengers in the flight is increasing.', 'start': 36219.654, 'duration': 2.341}, {'end': 36223.015, 'text': "And let's talk about seasonality.", 'start': 36222.015, 'duration': 1}, {'end': 36224.736, 'text': 'You will see that seasonality is not constant.', 'start': 36223.035, 'duration': 1.701}, {'end': 36247.55, 'text': 'You will see the regular pattern but the regular pattern is increasing.', 'start': 36241.325, 'duration': 6.225}, {'end': 36252.634, 'text': 'If you see the size here, the size is increasing every year.', 'start': 36247.63, 'duration': 5.004}, {'end': 36254.135, 'text': 'The pattern is the same.', 'start': 36252.654, 'duration': 1.481}, {'end': 36256.957, 'text': 'Here it is small and then it is increasing.', 'start': 36254.215, 'duration': 2.742}, {'end': 36259.639, 'text': 'But the increase is increasing every year.', 'start': 36256.977, 'duration': 2.662}, {'end': 36270.268, 'text': 'So, your trend and seasonality are not constant.', 'start': 36266.044, 'duration': 4.224}], 'summary': 'Flight passengers increased from 1949 to 1960-61, showing an upward trend, with seasonality and size also increasing annually.', 'duration': 71.228, 'max_score': 36199.04, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts36199040.jpg'}, {'end': 36466.986, 'src': 'embed', 'start': 36434.43, 'weight': 0, 'content': [{'end': 36441.557, 'text': 'So, if I want to convert a multiplicative model into additive model, then I will have to take log.', 'start': 36434.43, 'duration': 7.127}, {'end': 36450.481, 'text': 'So, the equation we saw y is equal to t into s into i.', 'start': 36444.039, 'duration': 6.442}, {'end': 36460.544, 'text': 'So, if I take its log, log of y will be log of trend plus log of seasonality plus log of irregularity.', 'start': 36450.481, 'duration': 10.063}, {'end': 36466.986, 'text': 'And if I do this, then I will remove the change in seasonality.', 'start': 36461.504, 'duration': 5.482}], 'summary': 'Converting a multiplicative model to additive by taking the log removes the change in seasonality.', 'duration': 32.556, 'max_score': 36434.43, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts36434430.jpg'}, {'end': 36645.175, 'src': 'embed', 'start': 36614.469, 'weight': 11, 'content': [{'end': 36616.95, 'text': 'We have come to the end of this tutorial.', 'start': 36614.469, 'duration': 2.481}, {'end': 36619.67, 'text': 'Thank you very much and have a great learning ahead.', 'start': 36617.47, 'duration': 2.2}, {'end': 36622.791, 'text': 'I would like to tell you about the Great Learning Academy.', 'start': 36620.23, 'duration': 2.561}, {'end': 36626.111, 'text': 'This is a free initiative started by Great Learning.', 'start': 36622.831, 'duration': 3.28}, {'end': 36632.652, 'text': 'Here you will get more than 200 courses in which you will get free content for thousands of hours.', 'start': 36626.331, 'duration': 6.321}, {'end': 36640.534, 'text': 'And that too on in-demand topics like data science, machine learning, artificial intelligence, programming, cloud computing.', 'start': 36632.732, 'duration': 7.802}, {'end': 36645.175, 'text': 'Digital Marketing, DevOps, Management and all this will be completely free.', 'start': 36640.914, 'duration': 4.261}], 'summary': 'Great learning academy offers 200+ free courses on in-demand topics for thousands of hours.', 'duration': 30.706, 'max_score': 36614.469, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts36614469.jpg'}], 'start': 35246.976, 'title': 'Time series analysis', 'summary': 'Discusses time series decomposition, analyzing time series data, and multiplicative model for time series decomposition. it covers yearly data from 2000 to 2020, decomposition models (additive and multiplicative), trend, seasonality, error, and demonstrates time series analysis using python. additionally, it focuses on loading, manipulating and analyzing time series data using airpassenger.csv, and explains the process of using a multiplicative model for time series decomposition.', 'chapters': [{'end': 35474.676, 'start': 35246.976, 'title': 'Time series decomposition', 'summary': 'Discusses the concept of seasonality within yearly data from 2000 to 2020, the importance of decomposing time series, and the two types of decomposition models - additive and multiplicative - based on the constancy of seasonality.', 'duration': 227.7, 'highlights': ['The chapter discusses the concept of seasonality within yearly data from 2000 to 2020.', 'The importance of decomposing time series is emphasized.', 'The two types of decomposition models - additive and multiplicative - are introduced based on the constancy of seasonality.']}, {'end': 35788.617, 'start': 35474.776, 'title': 'Analyzing time series data', 'summary': 'Discusses the concepts of trend, seasonality, and error in time series data, emphasizing the importance of decomposition to understand the components affecting the data, and provides a demonstration of time series analysis using python.', 'duration': 313.841, 'highlights': ['The chapter emphasizes the importance of decomposition in understanding the components affecting the data, such as trend, seasonality, and error.', 'The demonstration of time series analysis using Python includes the use of NumPy for numerical computation, Pandas for data wrangling, and matplotlib for visualization.', 'The discussion also covers the possibility of varying trends in businesses, the impact of seasonality on sales, and the use of additive models to represent sales data.']}, {'end': 36199.02, 'start': 35789.518, 'title': 'Time series data analysis', 'summary': 'Focuses on loading, manipulating and analyzing time series data using airpassenger.csv, converting date time columns, setting time column as index, and extracting specific data points for time series analysis.', 'duration': 409.502, 'highlights': ["The time column 'year-month' is converted to date time format for time series analysis by setting the 'parseDates' parameter in 'read_csv' method, resulting in the correct data type 'datetime64'.", "Setting the time column 'year-month' as the index for time series analysis using the 'index_col' parameter in 'read_csv' method.", "Extracting specific data points by using 'loc' method to retrieve the exact value, such as finding the number of passengers on 1st May 1960 as 472.", "Loading and manipulating the time series data from 'airpassenger.csv' for analysis and plotting the data for better understanding of the time series."]}, {'end': 36716.537, 'start': 36199.04, 'title': 'Multiplicative model for time series decomposition', 'summary': 'Explains the process of using a multiplicative model for time series decomposition, demonstrating how to identify trends, seasonality, and convert a multiplicative model into an additive model using log transformation.', 'duration': 517.497, 'highlights': ['The number of passengers in the flight is increasing from 1949 to 1960, showing an upward trend.', 'The seasonality is not constant and is increasing every year, indicating a changing pattern.', 'Demonstration of converting a multiplicative model into an additive model using log transformation to achieve constant seasonality.', 'Introduction to the Great Learning Academy, offering over 200 free courses on in-demand topics with free certification upon completion.']}], 'duration': 1469.561, 'thumbnail': 'https://coursnap.oss-ap-southeast-1.aliyuncs.com/video-capture/JDcZBzb46ts/pics/JDcZBzb46ts35246976.jpg', 'highlights': ['Demonstration of converting a multiplicative model into an additive model using log transformation to achieve constant seasonality.', 'The chapter discusses the concept of seasonality within yearly data from 2000 to 2020.', 'The importance of decomposing time series is emphasized.', 'The demonstration of time series analysis using Python includes the use of NumPy for numerical computation, Pandas for data wrangling, and matplotlib for visualization.', 'The number of passengers in the flight is increasing from 1949 to 1960, showing an upward trend.', 'The seasonality is not constant and is increasing every year, indicating a changing pattern.', 'The two types of decomposition models - additive and multiplicative - are introduced based on the constancy of seasonality.', "The time column 'year-month' is converted to date time format for time series analysis by setting the 'parseDates' parameter in 'read_csv' method, resulting in the correct data type 'datetime64'.", "Setting the time column 'year-month' as the index for time series analysis using the 'index_col' parameter in 'read_csv' method.", "Extracting specific data points by using 'loc' method to retrieve the exact value, such as finding the number of passengers on 1st May 1960 as 472.", "Loading and manipulating the time series data from 'airpassenger.csv' for analysis and plotting the data for better understanding of the time series.", 'Introduction to the Great Learning Academy, offering over 200 free courses on in-demand topics with free certification upon completion.']}], 'highlights': ['Great Learning Academy offers over 200 free courses in data science, machine learning, and AI.', 'Anaconda distribution offers 7500+ data science packages and support for different libraries and models', "The chapter covers various string functions including finding the string length using 'len', converting to lower and upper case, and replacing characters, with examples and quantifiable data.", 'Python has four basic data structures: tuple, list, dictionary, and set', 'The chapter covers the concept of decision-making statements in Python', 'Introduction to Object-Oriented Programming in Python', 'Pandas library is a core tool for data manipulation and analysis', 'Covers operations with pandas and data visualization with matplotlib, numpy, and matplotlib', 'Legendary Pokemon have higher speed than non-legendary Pokemon.', 'The CSV file contains ball-by-ball information for 636 matches, with each match having an average of 248 records, indicating 8 extras per match.', 'The lowest speed of non-legendary Pokemon is observed in generation 2.', 'Supervised and Unsupervised Learning', 'Introduction to multiple linear regression and its equation (Y = AX1 + BX2 + CX3 + DX4 + E), highlighting the presence of more than one independent variable and their coefficients in determining the dependent variable.', 'Achieved decrease in mean squared error from 0.841 to 0.11 by using three independent variables', 'Detailed records of COVID-19 cases for various states till 17th July 2020', 'Significant increase in cases and deaths in Maharashtra from 1st May to 22nd July', 'Logistic regression used for binary classification, e^x / (1 + e^x) formula applied for relationship determination.', 'Time series analysis crucial for forecasting in business, emphasizing the importance of regular intervals.', 'Demonstration of converting a multiplicative model into an additive model using log transformation to achieve constant seasonality.', 'Introduction to the Great Learning Academy, offering over 200 free courses on in-demand topics with free certification upon completion.']}