Skip to Content
View all events

Python and R for Data Science

Published by O'Reilly Media, Inc.

Beginner to intermediate content levelBeginner to intermediate

Tackle complex data projects with the best of both worlds

This live event utilizes Jupyter Notebook technology

Bilingual people tend to think in concepts rather than words. This allows them to be more creative when approaching diverse problems by always having the best tool for the job at their disposal. The same applies to data scientists and engineers using multiple programming languages simultaneously. For data science, the established languages are Python and R; and they’re competing for the top spot.

Join expert Boyan Angelov to learn how to leverage both languages in your data work to be more productive in tackling complex data projects. The concepts will be covered in presentations and notebooks (both in Python and R), and then you’ll dive into practice with hands-on exercises. You’ll use state-of-the-art open source packages for both languages, first learning how the languages compare one to one, as if you were reading a bilingual dictionary, and then how those concepts apply in the data format (i.e., image and text) and the workflow (visualization, machine learning). Finally, with a practical case study, you’ll learn how to combine the best of both worlds.

What you’ll learn and how you can apply it

By the end of this live online course, you’ll understand:

  • The similarities and differences between R and Python
  • Areas in which one language is better than the other
  • Learn how to set up an optimal development environment for a bilingual data project
  • How to take advantage of both languages in different contexts, such as working with different data formats and workflows

And you’ll be able to:

  • Choose the best tools to work with challenging datasets in your daily work, including text, image, time series, and spatial data
  • Tackle data science challenges across the full stack, such as exploratory data analysis, data wrangling, machine learning, and reporting
  • Take maximum advantage of the open source ecosystem of both languages
  • Join a new community of data practitioners

This live event is for you because...

  • You’re a Python user who wants to learn R, or an R user who wants to learn Python.
  • You work in data science or data engineering.
  • You want to have more and better tools at your disposal when facing complex challenges.
  • You work in a multilingual organization and want to be more productive when collaborating with your colleagues.

Prerequisites

  • A computer with R and RStudio installed and a project set up; follow the instructions on GitHub
  • A working Python installation in the same project as RStudio (the Python setup should use virtualenv and JupyterLab, together with the packages for the course installed); follow the instructions on GitHub
  • Familiarity with either R or Python at an intermediate level; basic knowledge of the other language
  • Basic understanding of data science or engineering topics, such as data visualization, data wrangling, and machine learning

Recommended preparation:

Recommended follow-up:

Schedule

The time frames are only estimates and may vary according to how the class is progressing.

Introduction and bilingual dictionary (50 minutes)

  • Presentation: Origins of and key events for R and Python and how form influences function; the language wars; advantages of bilingualism; optimal tooling for full stack work (version control, dependency management, project structure, IDEs, and code editors)
  • Jupyter notebooks: 1:1 comparisons; common patterns, data structures, and packages
  • Group discussion and exercise: Translate a script between Python and R
  • Q&A
  • Break

Data format context (55 minutes)

  • Presentation: How to select a good open-source pacakge; bBilingualism in the context of data formats; how the format of data influences which tool (language or package) is best for the job; good and bad package API design;image and text formats overview (OpenCV, Natural Language Toolkit, spaCy); time series and spatial formats overview(ts, prophet, raster)
  • Jupyter notebooks: Programmatically Work with Images; Prepare Text Data for Machine Learning; Load, Visualize, and Process Time Series and Spatial Data in R and Python
  • Group discussion and exercise: Text data processing in Python
  • Q&A
  • Break

Data workflow context (50 minutes)

  • Presentation: Bilingualism in the context of data workflows; defining full stack data science; exploratory data analysis (EDA) and reporting workflows; data visualization and interactive reporting (ggplot2, shiny, rmarkdown); data wrangling and machine learning (dplyr, scikit-learn)
  • Jupyter notebooks: Apply Grammar of Graphics Principles with ggplot2; Create a Static and Interactive Report Showcasing EDA Results; Dive into Concise Data Wrangling with dplyr; Chain Complex Processing Pipelines; Combine the dplyr Pipeline with scikit-learn Boilerplate
  • Group discussion and exercise: Create a complete data processing pipeline in R
  • Q&A
  • Break

Full stack case study (25 minutes)

  • Presentation: Introduction to the data science case study; dataset description (wildfires); features and target; general approach
  • Jupyter notebook: Applying everything we learned so far
  • Q&A

Your Instructor

Boyan Angelov

Boyan Angelov is a CTO and consultant with a decade of experience in a variety of academic and business environments such as bioinformatics, clinical trials, HRTech, LegalTech, and management consulting. He is additionally a contributor to open-source projects and speaks regularly at conferences and meetups.

linkedinXlinksearch

Skills covered

  • Python
  • R