R vs Python

All around us data is being created, used or analysed. Whether it is Netflix making new suggestions on what to watch next or credit card companies trying to decide whether your next buy was fraudulent or not. The question is: how? How do we go about looking at thousands and thousands of rows of data? How do we get anything of use out of the data collected? R and Python are the two most popular programming languages used by data analysts and data scientists. Which then leads to the question: which one is better?


Background Information

  • Python:

    First released: 1991

    Created by: Guido Van Rossum

    Inspired by: C, Modula-3 and ABC

    Python emphasises productivity and code readability

  • R:

    First released: 1995

    Created by: Ross Ihaka and Robert Gentleman

    R’s software environment was originally written in C and Fortran

    R focuses on better, user friendly data analysis, statistics and graphical models


Both R and Python are widely used open-source programming languages and free. R is primarily used by academics and researchers (however it is slowly expanding into the business world) as it is mainly used for statistical analysis. Whereas Python is mainly used by programmers who want to apply statistical techniques to data and by developers who turn to data science as it is more of a general-purpose programming language. They are both useful for machine learning, data visualisations and working with large datasets.

Which is easier to learn?

People without any programming experience tend to struggle to pick up R easily/quickly, however because Python is considered more of a general-purpose programming language most people tend to pick it up quicker and find it easier to learn. This is due to the way Python works is very similar to the way the computer thinks and it is easier to de-bug your code due to the syntax that Python uses.

Code can be written in many different ways in R, however in Python there is only one way which the code can be written.

Which one is better?

Both of these programming languages are used in industry, it depends on the company that you work for which will depend on which one you will be using. If you know one but not the other then it is very easy and quick to pick the other one up when you start to use it. It is down to personal preference as to which one you should use.