Kirill Eremenko

You, like many other data scientists, might be wondering which programming language to learn. Whether you have experience in other coding tools or not, you might feel overwhelmed by the individual features of R and Python, including the wide range of libraries and packages. Don’t worry, we’re here to help.

To no one’s surprise, both R and Python benefit a wide range of users, and tech professionals often use both. This article is going to help you decide which has the right tools to get you going.

R Programming A-Z™: R For Data Science With Real Exercises!

Last Updated September 2023

  • 79 lectures
  • All Levels
4.6 (51,701)

Learn Programming In R And R Studio. Data Analytics, Data Science, Statistical Analysis, Packages, Functions, GGPlot2 | By Kirill Eremenko, SuperDataScience Team, Ligency Team

Explore Course

To start, you’ll have to figure out exactly why you want to use the programming language. For example, a data scientist working mostly on genetics research may prefer to use R. It’s widely used across genetics and popular with bioinformaticians. Someone working on models for image analysis might find themselves working with people who use Python. This is because of its sophisticated image manipulation tools. 

In the end, it’s your choice. You might not want to do something just because it’s what everyone else is doing. However, it’s important to be able to “speak” the same language as your future peers. 

Who uses R and why?

At first, R was a platform for statistical computing. R hosts all the classical tests, time-series analysis, clustering, and more. It has a large community of data miners. This means there are lots of accessible packages, both from R developers and users. There are many packages and layers for plotting and analyzing graphs, such as ggplot2. 

R has become popular in the new-style artificial intelligence scene, providing tools for neural networks, machine learning, and Bayesian inference. R is compatible with such packages for deep learning as MXNet and TensorFlow. You can read more about these at a Quick list of useful R packages

R is popular not only with data scientists but also with statisticians and people in other fields that need to manipulate data. This includes people in medicine, finance, and the social sciences. For data scientists, finding a widely used program is important. We want to be able to speak to as many areas of study within one language as possible. This can make our findings easier to translate and understand. 

Who uses Python and why?

Python is an excellent tool for programmers and developers across a wide range. People can use Python’s interface and an array of functions for developing many algorithms. The algorithms could simulate biomolecules or deliver anti-spam software. 

Python came out in 1989. Since then, some have called it one of the most important general-purpose object-oriented programming languages. Python increases in popularity with new programmers, including data scientists. This means it has a large community of users and troubleshooters.

Python is also popular among people working in artificial intelligence. It has tools for machine learning, neural networks, and Tensorflow. The libraries are another reason to use Python. The libraries include NumPy for statistical analysis, pandas for data preparation, and seaborn for generating plots. 

How can we compare R and Python?

So how do they each match up? You want to think through each option. I know the frustration of not having thought of potential limits. Some of the main things to consider for a data science application are:

Let’s have a look at how each language fares on these topics.

Processing speed

Many people think R is slow because R requires physical memory to store objects. This means it’s not a great option for big data. Faster processors are reducing this limitation. Various packages out there focused on fixing this. Python though is better for large datasets. Python can load large files faster. 

Online community

As I mentioned, both R and Python have a widely backed support network. You can reach out to this community for help. The community is an invaluable source of help for those bugs you just can’t seem to troubleshoot readily.

Difficulty to learn

This may or may not be a problem with using R. Its steep learning curve is due to its large power for statisticians, since experts in the field developed it. This does mean it takes more time to learn. Python is very attractive to new programmers for how easy it is to learn and use.

You will need to get familiar with terminology which may seem initially daunting and confusing for both R and Python. For example, you will need to learn the difference between a “package” and a “library.” 

The set-up for Python is easier than for R. This is also because statisticians built R and based it on a mature predecessor, S. Python, though, will be strict with users on syntax. Python will refuse to run if you haven’t met easily missable faults. In the long run, though, that makes us better, neater code writers. 

R provides its many academic users with more control over design for their graphics. R allows various visible exports and formats. Both are interpreter-based. Based on long experience with other languages, such as C++, this makes spotting bugs much easier.

User-friendly interface

Rstudio is many people’s favorite platform for working in R. It’s classified as an integrated development environment (IDE). Rstudio comprises a console for direct code execution with all the functions for plotting, supporting interactive graphics, debugging, and workspace management. See RStudio IDE Features for a more detailed guide. 

Python has many IDEs to choose from. The benefit of this is that it provides a nice opportunity for you to choose one that feels familiar based on your background. For instance, coming from a computer science background, Spyder is a clear favorite. Whereas, beginners in the field find PyCharm accessible and intuitive.


We’ve touched on this topic. I would stress that this is subjective to your chosen field. The fields of academia, finance, and healthcare usually use R. You’ll want to take advantage of that. Software development, automation, and robotics are more likely to use Python.

R vs Python: What are the strengths of each?

Both R and Python offer you different opportunities to create smart coding with minimal effort. While they have some similarities, each has its own set of strengths.  



With all this in mind, choosing which language you’ll start with depends on what you want from it. If you specialize in statistical analysis or work in research, you may want to choose R. If you see yourself branching across many disciplines, you could use Python’s generality and diverse network. 

Depending on your job, interest, and need, you may decide it would be best for you to eventually learn both. At the very least, it’s useful to know enough to be able to read the other’s syntax as you get to know each for their respective strengths. This will undoubtedly open more doors for you and help you land jobs. 

More importantly, learning both R and Python will give you added clarity to decide what career path you want to take. Don’t be overwhelmed. Learning a second language will be easier than the first. You no doubt will also find yourself excited about joining a whole new community as you grow as a data scientist.

Good luck and happy coding!

Page Last Updated: April 2020

Top courses in Python

Python 3: Deep Dive (Part 1 - Functional)
Dr. Fred Baptiste
4.8 (10,325)
Python and Django for Beginners
Navin Reddy
4.6 (8,803)
Learn Python & Ethical Hacking From Scratch
Zaid Sabih, z Security
4.7 (18,214)
The Python Bible™ | Everything You Need to Program in Python
Ziyad Yehia, Internet of Things Academy
4.6 (48,190)
Learn to Code with Python
Boris Paskhaver
4.7 (5,146)
Python Network Programming for Network Engineers (Python 3)
David Bombal, Experts with David Bombal
4.7 (8,307)
The Self-Taught Programmer
Cory Althoff
4.7 (4,249)
Python for Financial Analysis and Algorithmic Trading
Jose Portilla
4.5 (17,242)

More Python Courses

Python students also learn

Empower your team. Lead the industry.

Get a subscription to a library of online courses and digital learning tools for your organization with Udemy Business.

Request a demo

Courses by Kirill Eremenko

Data Science A-Z™: Hands-On Exercises & ChatGPT Bonus [2023]
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.5 (33,529)
Tableau Interview Q&A: Tableau For Data Science Careers
Kirill Eremenko, SuperDataScience Team, Ligency Team
4 (474)
R Programming A-Z™: R For Data Science With Real Exercises!
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.6 (51,701)
R Programming: Advanced Analytics In R For Data Science
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.7 (8,602)
Python A-Z™: Python For Data Science With Real Exercises!
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.6 (26,946)
Tableau 2022 A-Z: Hands-On Tableau Training for Data Science
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.6 (94,453)
Tableau 2022 Advanced: Master Tableau in Data Science
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.7 (16,622)
Machine Learning A-Z™: AI, Python & R + ChatGPT Bonus [2023]
Kirill Eremenko, Hadelin de Ponteves, SuperDataScience Team, Ligency Team
4.5 (175,641)
Power BI A-Z: Hands-On Power BI Training For Data Science!
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.5 (21,378)
Colors for Data Science A-Z: Data Visualization Color Theory
Kirill Eremenko, Patrycja Hannagan, SuperDataScience Team, Ligency Team
3.6 (1,163)
Deep Learning A-Z™ 2023: Neural Networks, AI & ChatGPT Bonus
Kirill Eremenko, Hadelin de Ponteves, SuperDataScience Team, Ligency Team
4.5 (44,157)
Statistics for Business Analytics and Data Science A-Z™
Kirill Eremenko, SuperDataScience Team, Ligency Team
4.5 (11,080)

Courses by Kirill Eremenko