O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Step-by-Step Programming with Python and R

Video Description

Speed up your programming journey

In Detail

Want to know the two of the most powerful programming languages for data science? This Learning Path will give you exposure in both Python and R. It will help build your understanding of key Python and R principles, which you can use as a springboard to further develop your expertise.

Prerequisites: Basic understanding of programming languages. Designed for developers who want to understand Python and R from scratch.

Resources: Code downloads and errata:

  • Beginning Python

  • Mastering Python - Second Edition

  • Introduction to R Programming

  • Mastering R Programming

  • PATH PRODUCTS

    This path navigates across the following products (in sequential order):

  • Beginning Python (4h 20m)

  • Mastering Python - Second Edition (5h 21m)

  • Introduction to R Programming (3h 46m)

  • Mastering R Programming (5h 21m)

  • Table of Contents

    1. Chapter 1 : Beginning Python
      1. The Course Overview and Installing Python 00:06:15
      2. Setting Up a Programming Environment 00:06:46
      3. Variables 00:05:29
      4. Introduction to Types 00:06:04
      5. Basic Operators 00:05:53
      6. Introduction to Strings 00:06:25
      7. String Functions 00:06:42
      8. Advanced String Manipulation 00:05:23
      9. String Formatting 00:08:18
      10. User Input 00:05:18
      11. Introduction to Lists 00:06:24
      12. List Methods 00:04:51
      13. Advanced List Methods 00:05:41
      14. Built-in List Functions 00:04:25
      15. 2D Arrays and Array References 00:07:45
      16. List Slicing 00:05:46
      17. Control Flow 00:05:46
      18. Comparison Operators 00:04:44
      19. Else and Elif 00:06:44
      20. and, or, and not 00:06:09
      21. Conditional Examples 00:05:22
      22. Mini Program 00:07:45
      23. For Loop 00:07:25
      24. While Loop 00:06:44
      25. Iterables 00:04:52
      26. Loops and Conditionals 00:05:00
      27. Prime Number Checker 00:06:55
      28. Function Basics 00:05:29
      29. Parameters and Arguments 00:06:57
      30. Return versus Void Functions 00:03:34
      31. Working with Examples 00:08:30
      32. Advanced Examples 00:06:46
      33. Recursion 00:04:26
      34. Recursion Examples 00:09:11
      35. Import, as, and from 00:04:43
      36. Python API and Modules 00:06:48
      37. Creating Modules 00:04:59
      38. Modules and Testing 00:05:28
      39. Installing PIL/Pillow 00:06:29
      40. Basics of Using PIL/Pillow 00:06:25
      41. Picture Manipulations 00:06:30
      42. Custom Picture Manipulation 00:06:20
      43. Wrapping Up 00:03:03
    2. Chapter 2 : Mastering Python - Second Edition
      1. The Course Overview 00:03:25
      2. Python Basic Syntax and Block Structure 00:11:54
      3. Built-in Data Structures and Comprehensions 00:08:55
      4. First-Class Functions and Classes 00:05:50
      5. Extensive Standard Library 00:05:56
      6. New in Python 3.5 00:06:02
      7. Downloading and Installing Python 00:05:17
      8. Using the Command-Line and the Interactive Shell 00:04:01
      9. Installing Packages with pip 00:03:16
      10. Finding Packages in the Python Package Index 00:04:29
      11. Creating an Empty Package 00:05:50
      12. Adding Modules to the Package 00:05:31
      13. Importing One of the Package's Modules from Another 00:05:26
      14. Adding Static Data Files to the Package 00:02:53
      15. PEP 8 and Writing Readable Code 00:07:51
      16. Using Version Control 00:04:48
      17. Using venv to Create a Stable and Isolated Work Area 00:04:41
      18. Getting the Most Out of docstrings 1: PEP 257 and docutils 00:08:00
      19. Getting the Most Out of docstrings 2: doctest 00:04:04
      20. Making a Package Executable via python -m 00:05:52
      21. Handling Command-Line Arguments with argparse 00:06:22
      22. Interacting with the User 00:04:39
      23. Executing Other Programs with Subprocess 00:09:10
      24. Using Shell Scripts or Batch Files to Run Our Programs 00:03:01
      25. Using concurrent.futures 00:13:53
      26. Using Multiprocessing 00:11:22
      27. Understanding Why This Isn't Like Parallel Processing 00:08:02
      28. Using the asyncio Event Loop and Coroutine Scheduler 00:06:52
      29. Waiting for Data to Become Available 00:03:30
      30. Synchronizing Multiple Tasks 00:06:18
      31. Communicating Across the Network 00:03:45
      32. Using Function Decorators 00:06:45
      33. Function Annotations 00:07:09
      34. Class Decorators 00:05:53
      35. Metaclasses 00:05:35
      36. Context Managers 00:05:52
      37. Descriptors 00:05:38
      38. Understanding the Principles of Unit Testing 00:05:07
      39. Using the unittest Package 00:07:28
      40. Using unittest.mock 00:06:12
      41. Using unittest's Test Discovery 00:04:30
      42. Using Nose for Unified Test Discover and Reporting 00:03:42
      43. What Does Reactive Programming Mean? 00:02:50
      44. Building a Simple Reactive Programming Framework 00:07:22
      45. Using the Reactive Extensions for Python (RxPY) 00:10:22
      46. Microservices and the Advantages of Process Isolation 00:04:13
      47. Building a High-Level Microservice with Flask 00:09:59
      48. Building a Low-Level Microservice with nameko 00:06:25
      49. Advantages and Disadvantages of Compiled Code 00:04:42
      50. Accessing a Dynamic Library Using ctypes 00:07:59
      51. Interfacing with C Code Using Cython 00:12:35
    3. Chapter 3 : Introduction to R Programming
      1. The Course Overview 00:04:54
      2. Installing R 00:03:46
      3. Installing RStudio 00:04:36
      4. Installing Packages 00:04:50
      5. Data Types and Data Structures 00:03:05
      6. Vectors 00:05:44
      7. Random Numbers, Rounding, and Binning 00:04:00
      8. Missing Values 00:02:47
      9. The which() Operator 00:03:11
      10. Lists 00:04:35
      11. Set Operations 00:02:09
      12. Sampling and Sorting 00:02:52
      13. Check Conditions 00:02:17
      14. For Loops 00:02:34
      15. Dataframes 00:08:30
      16. Importing and Exporting Data 00:06:30
      17. Matrices and Frequency Tables 00:03:41
      18. Merging Dataframes 00:02:26
      19. Aggregation 00:02:48
      20. Melting and Cross Tabulations with dcast() 00:03:58
      21. Dates 00:05:35
      22. String Manipulation 00:05:14
      23. Functions 00:05:34
      24. Debugging and Error Handling 00:04:30
      25. Fast Loops with apply() 00:04:27
      26. Fast Loops with sapply(), lapply() and vapply() 00:02:00
      27. Creating and Customizing an R Plot 00:07:03
      28. Drawing Plots with 2 Y Axes 00:02:23
      29. Multiplots and Custom Layouts 00:03:08
      30. Creating Basic Graph Types 00:04:47
      31. Univariate Analysis 00:06:16
      32. Normal Distribution, Central Limit Theorem, and Confidence Intervals 00:05:32
      33. Correlation and Covariance 00:03:03
      34. Chi-sq Statistic 00:04:42
      35. ANOVA 00:04:54
      36. Statistical Tests 00:05:14
      37. Project 1 – Data Munging and Summarizing 00:11:31
      38. Project 2 – Visualization with Base Graphics 00:05:42
      39. Project 3 – Statistical Inference 00:03:50
      40. Pipes with Magrittr 00:05:21
      41. The 7 Data Manipulation Verbs 00:05:19
      42. Aggregation and Special Functions 00:03:36
      43. Two Table Verbs 00:02:43
      44. Working With Databases 00:05:30
      45. Understanding Basics, Filter, and Select 00:07:34
      46. Understanding Syntax, Creating and Updating Columns 00:04:06
      47. Aggregating Data, .N, and .I 00:04:21
      48. data.table 00:04:17
      49. Fast Loops with set(), Keys, and Joins 00:09:13
    4. Chapter 4 : Mastering R Programming
      1. The Course Overview 00:07:45
      2. Performing Univariate Analysis 00:05:22
      3. Bivariate Analysis – Correlation, Chi-Sq Test, and ANOVA 00:05:43
      4. Detecting and Treating Outlier 00:03:21
      5. Treating Missing Values with `mice` 00:03:59
      6. Building Linear Regressors 00:07:35
      7. Interpreting Regression Results and Interactions Terms 00:05:19
      8. Performing Residual Analysis and Extracting Extreme Observations With Cook's Distance 00:03:25
      9. Extracting Better Models with Best Subsets, Stepwise Regression, and ANOVA 00:04:39
      10. Validating Model Performance on New Data with k-Fold Cross Validation 00:02:29
      11. Building Non-Linear Regressors with Splines and GAMs 00:05:20
      12. Building Logistic Regressors, Evaluation Metrics, and ROC Curve 00:12:38
      13. Understanding the Concept and Building Naive Bayes Classifier 00:09:24
      14. Building k-Nearest Neighbors Classifier 00:07:01
      15. Building Tree Based Models Using RPart, cTree, and C5.0 00:06:33
      16. Building Predictive Models with the caret Package 00:08:11
      17. Selecting Important Features with RFE, varImp, and Boruta 00:05:19
      18. Building Classifiers with Support Vector Machines 00:08:04
      19. Understanding Bagging and Building Random Forest Classifier 00:05:07
      20. Implementing Stochastic Gradient Boosting with GBM 00:05:18
      21. Regularization with Ridge, Lasso, and Elasticnet 00:08:53
      22. Building Classifiers and Regressors with XGBoost 00:10:10
      23. Dimensionality Reduction with Principal Component Analysis 00:05:05
      24. Clustering with k-means and Principal Components 00:03:16
      25. Determining Optimum Number of Clusters 00:05:25
      26. Understanding and Implementing Hierarchical Clustering 00:02:36
      27. Clustering with Affinity Propagation 00:05:25
      28. Building Recommendation Engines 00:09:01
      29. Understanding the Components of a Time Series, and the xts Package 00:05:42
      30. Stationarity, De-Trend, and De-Seasonalize 00:04:07
      31. Understanding the Significance of Lags, ACF, PACF, and CCF 00:03:49
      32. Forecasting with Moving Average and Exponential Smoothing 00:02:25
      33. Forecasting with Double Exponential and Holt Winters 00:03:23
      34. Forecasting with ARIMA Modelling 00:05:26
      35. Scraping Web Pages and Processing Texts 00:09:24
      36. In this video, we'll take a look at how to scrape data from web pages and how to clean and process raw web and other textual data. 00:09:07
      37. Cosine Similarity and Latent Semantic Analysis 00:07:20
      38. Extracting Topics with Latent Dirichlet Allocation 00:05:07
      39. Sentiment Scoring with tidytext and Syuzhet 00:04:23
      40. Classifying Texts with RTextTools 00:03:57
      41. Building a Basic ggplot2 and Customizing the Aesthetics and Themes 00:07:18
      42. Manipulating Legend, AddingText, and Annotation 00:03:31
      43. Drawing Multiple Plots with Faceting and Changing Layouts 00:03:18
      44. Creating Bar Charts, Boxplots, Time Series, and Ribbon Plots 00:05:25
      45. ggplot2 Extensions and ggplotly 00:03:11
      46. Implementing Best Practices to Speed Up R Code 00:05:47
      47. Implementing Parallel Computing with doParallel and foreach 00:04:22
      48. Writing Readable and Fast R Code with Pipes and DPlyR 00:05:40
      49. Writing Super Fast R Code with Minimal Keystrokes Using Data.Table 00:06:38
      50. Interface C++ in R with RCpp 00:11:09
      51. Understanding the Structure of an R Package 00:05:02
      52. Build, Document, and Host an R Package on GitHub 00:07:10
      53. Performing Important Checks Before Submitting to CRAN 00:04:06
      54. Submitting an R Package to CRAN 00:03:11