If you want to upgrade your data analysis skills, which programming language should you learn?

For a growing number of people, data analysis is a central part of their job. Increased data availability, more powerful computing, and an emphasis on analytics-driven decision in business has made it a heyday for data science. According to a report from IBM, in 2015 there were 2.35 million openings for data analytics jobs in the US. It estimates that number will rise to 2.72 million by 2020.
A significant share of people who crunch numbers for a living use Microsoft Excel or other spreadsheet programs like Google Sheets. Others use proprietary statistical software like SAS, Stata, or SPSS that they often first learned in school.
While Excel and SAS are powerful tools, they have serious limitations. Excel cannot handle datasets above a certain size, and does not easily allow for reproducing previously conducted analyses on new datasets. The main weakness of programs like SAS are that they were developed for very specific uses, and and do not have a large community of contributors constantly adding new tools.
For those who have reached the frontiers of these programs, there is a next step: learn R or Python. R and Python are the two most popular programming languages used by data analysts and data scientists. Both are free and and open source, and were developed in the early 1990s—R for statistical analysis and Python as a general-purpose programming language. For anyone interested in machine learning, working with large datasets, or creating complex data visualizations, they are godsends.
But which of these programs is best to learn? As a former data analyst, it is the question I have been asked more than any other in my professional life. Though you could just try to learn both R and Python, each requires a significant time investment—particularly if you have never coded before.
Personally, I’m biased. Learning R radically changed my life for the better (I’m not exaggerating), but I know only a smidgeon of Python. Luckily, Quartz’s former data editor, Chris Groskopf, is a user of both languages. When I asked him which program he would recommend, he offered the nuanced answer all those non-coders asking me were seeking. (For a more technical discussion of the debate and others’ opinions on the matter, see here.


