The first decision most enthusiasts need to make. If you had this question, I understand where you’re coming from. My short answer: you’ll eventually use both.
Coming from a computer science background, I was naturally comfortable with Python. I never liked R, mainly because I couldn’t get hold of the syntax, and Python was my go-to for most of my work.
Few months into my learning journey, I was lucky enough to bag an academic based internship under a professor. It was a data analytics internship and gave me the taste of the world of data science. There was one problem, though.
The professor I had to work with was comfortable with R. He asked me to use the same. If this happens to you, you’ve got two options:
- Say no — and risk being one of the poor performers of the internship.
- Say yes — but having to learn a new language from scratch.
I did the latter. I wanted to break into the field at any cost, if that means I’d have to learn a new language, let it be. I was thankful for this experience because I ended up adopting a learning mindset early on my journey.
A year later, for my first job, I had to use both Python and R. Now, during my current job, I primarily use PySpark. It’s similar to Python, but there’s more to learn. Thanks to my previous experiences, I overcame the fear of learning new languages.
I love being challenged, eventually to come out victorious.
What this means to you:
It’s often overwhelming when you’re starting, you would be required to make a lot of choices, and you’ll want to make the best one.
But don’t get into the debate of which language/tool is best. Why? All languages have a purpose in this ecosystem.
As a rule of thumb, if you’re coming from a statistics/mathematics background, I recommend starting with R. If you’re coming from computer science or other backgrounds, feel free to start with Python.
In the end, the language doesn’t matter, how good you’re with concepts of data science and artificial intelligence matters the most. The goal eventually is to become technology-agnostic; to use any tool/language that best fits the problem.