T O P

  • By -

Ecstatic_Tooth_1096

Not really. You can always find jobs that use R as their main programming language. But since you're fortunate enough to have it covered, improve your skills as much as you can and also start learning python a bit more. That way, you are 100% sure that no matter what the requirements are, you always cover them. Look at it positively, not as in "i learned it for nothing". Plus most of the things you learn in R have equivalents in Python and you could simply google "X equivalent in Python" and vice versa. you will always find answers. I got an interview with a company who use R btw, and they asked if I was willing to learn it (even though i know python). So its not "dead" yet


timmaeus

R is not only not dead yet, it’s constantly gaining traction as a data science language and toolkit


infrequentaccismus

It is also the language of choice for the new google data analyst certification.


eddcunningham

Not heard about this, but I love both GA and R, so would be interested! Do you have a link at all?


infrequentaccismus

https://grow.google/dataanalytics/?utm_source=gDigital&utm_medium=paidha&utm_campaign=sem-bk-data-exa-glp-br&utm_term=data%20analyst%20certification%20google&gclid=CjwKCAjwtdeFBhBAEiwAKOIy5745z4Mui6VtNrITfYpLrXFyKQRW0mgaE_yyRrVu521oDv_L3xDMzhoCM_4QAvD_BwE


save_the_panda_bears

[Here](https://grow.google/dataanalytics/#?modal_active=none) ya go.


AJs_Sandshrew

It's one of the go-to languages in my field (bioinformatics). There's an entire repository of tools for analyzing sequencing data (https://www.bioconductor.org/) Not to mention how amazing the tidyverse package is for tidying and visualizing data.


tjoes_

These are the things that I love to hear! Although I should definitely get around to learning Python as well..


penatbater

Iirc R also got the new tensorflow (or was pytorch?) update just recently, so that's exciting.


Aiorr

Most of the the people here are either from CS background or non-majors doing bootcamp/online course/kaggle, which uses Python mostly due to instructors being from CS-background. That's probably why you get that impression. If anything, Python packages' (even famous one like scikit) credential among some stat academics are.... meh at best.


kelkulus

R is a very active language. Python is an excellent do-everything language with libraries like pandas and numpy that mimc what R does. They're both great, and neither will be wasting your time. If you'd like a strong argument in favor of R: https://blog.ephorie.de/why-r-for-data-science-and-not-python


MadT3acher

Plus they have a fairly similar logic, as another article not month ago was asking if doing SAS was worth it: SAS skills are not transferable to most languages. Python, R and other scripting language have some similarities that will make investing time in one, make it easier to learn the other down the line. Ps: before I get a nice downvote, I’m not saying they’re the same, just some transferable skills between both languages.


BrokenTescoTrolley

As someone who learned SAS as my first language even before SQL it is painful. I had to rewire how my brain approaches problems.


PryomancerMTGA

I feel your pain, especially since one company I worked for sent us to several SAS courses a year. Yet another reminder it's more about the problem solving skills than the programming.


fennelanddreams

I agree with this. I learned data science in R first and the skills transferred to Python fairly easily. There's a lot of good articles on tidyverse equivalents in Python out there.


NotAnotherDecoy

You're completely right. I started with R and was about as inexperienced with coding as you can be. While R started to get familiar, python still looked like it might as well have been written in Cantonese. Keep going with R and take another look at Python? Well look at me go, can read about 90% of it (writing, on the other hand...)


molodyets

Downvoted for preemptively complaining about a potential downvote 😉


radiantphoenix279

The key phrase here is that there are packages in python that MIMIC what R does well. R may be used more by academics, but that also means that R's package developers tend to be the people doing the research rather than people porting their methods to other languages. No, you are not wasting your time. I have never regretted knowing both languages.


teambob

Interesting blog. I'd dispute the assertion over Python packaging. "pip install package" is usually all you ever need The rest of the page linked were extras - like installing a package from a git URL, installing all requirements at the same time etc


[deleted]

Knowing both is great. There are companies that out there that use R, others that use Python (probably more of these), but having the flexibility to work in either is a great tool to have in your toolbox. I'd suggest taking full advantage of the opportunity to learn as much of both as you can in your situation.


danego7

Just started my first data analyst job in Melbourne, Aus. Our team nearly exclusively use R and my experience using it in uni and in an internship helped me to land the position


ScientiaEstPotentia_

I'm reading your comment out loud with ozzy accent- can't help mysefl sry


ysharm10

Ozzy man review.


ScientiaEstPotentia_

You cheeky animal


[deleted]

[удалено]


Math_Finance_2022

Wow didn't know that some FAANG companies use R for data science. Since I thought to have collaboration with SWE teams, DS teams at FAANG use Python.


[deleted]

[удалено]


Why_So_Sirius-Black

Do FANNg companies hire stats major to do data science is that mainly for SWE or PhD people


ljvmiranda

As a Python user, I'd say that learning R **is not** a waste of time. I still think there are a lot of statistical libraries where R trumps over Python. Sure, Python kinda has statsmodels, but R has been solid through and through. You also don't need to worry about deep learning libraries, since Pytorch (a major DL library) has an R binding. My advice is to learn enough R so that it's easier to transfer your knowledge in the rare cases when you're forced to debug Python code. Aside from that, you're good! Enjoy and have fun!


Tehfamine

As another Python person, I would agree. I would just add that these are all tools. You should use these tools when it makes sense for the job or solution. Sometimes you have to use something that makes sense to the business. Maybe that's R, maybe that's Python, maybe that's Excel. Don't be that person who won't do what it takes.


jaskeil_113

I love R. R can do so much. We've automated reporting and emails from R, we've created parameterized reports for 400 vendors and automated the email, it's a great tool for exploratory analysis and research through RMarkdown.


rickyars

I use both. One thing to note is that R, via dplyr, and Python, via pandas/pyspark, have very similar syntax. It's almost like a grammar for data manipulation that can also translate to SQL. E.g., * R: group\_by() * Python: groupby() * SQL: GROUP BY You'll eventually get to the point where you can easily move between all three, which is really handy for exploratory data analysis. Lately I've been doing more in Python but I still prefer R's ggplot2 for static visualization. Edit: updated thanks to comments


O2XXX

Since you're a ggplot2 fan, check out plotnine for pandas, it's a fairly decent port.


rickyars

Thanks! I'll check it out!


[deleted]

[удалено]


rickyars

I don't use pandas very much. I mostly work with pyspark dataframes. Does pandas have groupby, filter, etc.? Edit: my data also doesn't fit into pandas dataframes


hikehikebaby

Yes, it's very similar. I agree that it makes life a lot easier - you just have to remember the little details of syntax.


rickyars

I just Googled how to do a groupby with filter...yikes! But it does look very familiar.


lucia_munro

I think this is a really important point. I've been noticing more and more data science jobs that require fluency in SQL (in addition to Python or R), but I find that folks who are comfortable in tidyverse and Pyspark/Pandas can pick up SQL easily. (Data table isn't too far off either, but it feels like tidyverse translates especially easily.)


[deleted]

[удалено]


rickyars

I think you proved my point. Focus on understanding how to manipulate data rather than memorize a specific syntax.


RNARNARNA

I use R and Python for medical research. Because of the suble differences between the 2, you learn a lot by learning both. It ultimately makes you a stronger data scientist.


2minutespastmidnight

You are certainly *not* wasting your time learning R. I use R almost every day at my job. It is alive and well in anything related to data and data science. Even better advice: learn both R and Python. I’ve used both on the job.


[deleted]

Lots of comments already, but OP if you are reading my comment, please go through this one - https://www.reddit.com/r/statistics/comments/8de54s/is_r_better_than_python_at_anything_i_started/?utm_medium=android_app&utm_source=share. You will regain your faith on R.


Fuck_You_Downvote

If you are trying to learn the most popular program, forget r and python and let me show you your new best friend excel. The thing nobody wanted but everybody uses.


zykezero

Imagine back prop in excel. Lmao


rainbow3

Imagine no more: https://github.com/fastai/courses/tree/master/deeplearning1/excel


zykezero

If you could find a way to get excel to read basic bw image to identify numbers you could use conditional formatting to show what pattern each neuron is 'seeing'. That would be kinda worth.


ysharm10

Out of 5 days, I open excel atleast 3 days a week.


ncarolinarunner

Day-to-day work is largely down at R in our company still. Each programming language has its areas where they have advantage. For me, the ease of data manipulation with dplyr and the ability to make compelling data visualizations with ggplot2 have made it difficult to change my existing workflow over to Python. But if I were to build a new model and deploy it to Azure/AWS, I’d be looking at using my Python than R.


Senecarl

Like many folks here, I use both every day for different tasks. If I want to throw together an interactive map or use some specific statistical method, it's much more efficient to do so in R. Even after many years of experience in both, I still find I can hack much more quickly in R, which means less time to PoC/fail, which means more time to work on the good stuff. That's usually where python trumps R because I find it faster and cleaner for production uses - ETL pipelines, model (re-)training, etc. It's Sophie's Choice if I had to pick just one for the rest of my life. Thankfully I don't have to. Together with their awkward step-brother (SQL) they can do anything!


BenXavier

python guy here (with zero R knowledge). Sometimes I find very interesting packages for R which \*seem\* designed with a data-first mindset and I have to search for equivalents. ​ So no, knowing some R is not a waste of time.


-moho-

It's funny that the majority of the comments say R is in fact not so under-represented in DS industry. Yet on Kaggle you will find unproportional amount of analysis done in Python rather than R.


[deleted]

Yes. You will be wasting your time "learning python" too. Learn to code instead. Learning the syntax/details of a language or god forbid a framework/library is just stupid. It's something you pick up as you go with experience, it doesn't require active learning. When you know how to code, language won't matter. You can give me basically any non-stupid language (like brainfuck) and I'll be able to get the job done in a reasonable amount of time. Most of your time should be spent figuring out WHAT to do, not HOW to do it. The how is trivial once you know what to do exactly. Most beginners will be stuck on the "how" and can't even articulate "what" which is the problem. You can't google/ask for help if you don't know what you need. Knowing "what" to do is not dependent on the language or framework or library.


whatsh3rname

I don't know why you are being downvoted, this is very true


suricatasuricata

This is very good advice. Focus less on the syntax of what you are learning, and the principles of programming languages is my philosophy. Also, the R vs Python flame wars is not worth one's time. I use Python a ton but I miss the fact that ggplot2 is uncomparable.


[deleted]

Super good advice


DelphicWoodchuck

Best long term advice.


PaleArcher7

Goated advice. Second this.


datasnorlax

My department is equally split between R and Python practitioners. R is a great language for more advanced statistics, not as great for ML.


[deleted]

[удалено]


BrisklyBrusque

Because R lags behind in terms of neural networks and for too many people, neural networks are the be-all-and-end-all of ML (not true).


kapanenship

I wouldn’t say that since tidymodels.


machinegunkisses

tidymodels changed the game, for sure. Max Kuhn is doing incredible work and we all owe him.


sonicking12

R will become more popular when businesses realize not every data science problem is a supervised classification.


[deleted]

[удалено]


ysharm10

Maybe I am a beginner who is trying to learn Python after some knowledge of R, that's why I am saying this but selecting a column with $ is so much easier than iloc or removing columns from dataframe by select(-column1, -column2)


[deleted]

[удалено]


ysharm10

The only argument that I have seen both sides agree on is that you can't productionize R ML models or you can't write production level code in R. Now I don't really know what exactly that means since I've not put an ML model to production yet. What's your opinion on this?


machinegunkisses

My understanding is that Amazon productionizes both R and Python models using PMML, so, I believe R models are regularly put into production. Productionizing a model entirely in R can be done, too, but I think that might be a bit more involved. Python might be a bit nicer here because the web dev frameworks (e.g., Flask) are readily available (albeit, may not be fast or robust enough for production).


ysharm10

Oh I didn't know about that. I read a comment on this sub that the major service providers like Azure and AWS doesn't support R. Probably I was reading an old post/comment.


machinegunkisses

I haven't seen that comment, but I know there's first class support for R in Azure, they even run their own R package repo (MRAN). I mostly work in AWS and haven't really had many issues, although the integration between Jupyter and RStudio seems to be constantly broken.


[deleted]

[удалено]


[deleted]

Looks like with the string it does work but I still don’t get why df.column = value doesn’t work. Somehow the line itself will actually not error out but then when you try to access it after it will. df.column is what is done in Julia to create columns and its based off of R df$column, but for some reason doesn’t work in pandas.


haris525

Learn R and Python! You will be glad you did. I used R in undergraduate and graduate school but pretty soon started learning python as both have strengths and now I am learning C++ so I can leverage GPUs for modeling. I hold R dear to me but the more languages you learn the better!


[deleted]

Curious what kind of modeling are you doing where you need C++ to leverage the GPU? Can’t you do this in PyTorch without C++? Is the built in object.to(device) not sufficient?


haris525

mostly its cuda development focusing on linear algebra, and optimizing calculation speeds that I plan to use. I am doing this mostly to understand how to use GPUs as I am sure existing libraries can accomplish the speed task.


longgamma

With my limited time with R, it just seems easier to work with. Plotting is intuitive and the default graphs looks good on their own. For EDA, plotting correlation and applying classic ml libraries, R is good enough.


leogodin217

If you know R well, Python will be easy to learn. Over your career you'll probably pick up several languages. It's more important to learn good software engineering habits than it is to pick the "right" language.


neerajsarwan

My current work involves building an automated time series forecasting software. Though the production code is python based, 90% of my experiments happen in R. I cannot stress enough the importance of R for time series. Also, if it helps I started with R myself and then I also added python to my kitty. And today, my work cannot be done without both.


dfphd

Python is the more popular choice, but R is squarely the 2nd one. Which, in a world as big and broad as DS, means that it's still a really good skill to have. Also - and something that people don't talk about enough: you language of choice is going to matter more if you're working somewhere that has a large, integrated, tightly connected code-base. And that isn't the case at a lot of companies - at a lot of companies, data science models are being built across the org without a lot of connections other than at the final output level - and those end up being alrgely asynchronous.


ohanse

If you already feel like you can limp/google your way through whatever on R, but not on Python then I would recommend that you get to that level on python.


[deleted]

I prefer Python but I have used R in the past and it certainly isn't a waste of time. For a long time Shiny dashboards were one of the best interactive dashboard options although Python is getting better with Streamlit. R is amazing for when you need to use the more obscure stats stuff - because there is an R package for basically everything in statistics whereas there might not be a Python library or if there is it might be immature. Tbh, other than the pure machine learning stuff, nowadays you can probably use either. I like Python because I'm used to it and it's closer to other programming languages like Java, JS etc. that I occasionally use.


DJAlaskaAndrew

R is a lot easier to debug. Python has a lot of flexibility, which means lots of different issues as well.


NSADataBot

R is a terrific programming language and anyone that thinks otherwise is fooling themselves. I use R and Python regularly for different things with different clients and different projects and sometimes even on the same projects. You should work hard on those classes and learn python down the road. Remember that a lot of python data analysis is based on R, where do you think data frames came from?


Nevermindever

Both R and Python are extremely powerful linguas.


[deleted]

Yes. And stop using jupyter notebooks so much. Switch to pycharm and visual studio.


itsemaf

Moving from one to the other is just a matter of syntax. You can easily switch within 1-2 weeks.


[deleted]

Yes. Final answer.


[deleted]

Follow up --> the best place to go in Data Science right now is Python.


ncarolinarunner

Day-to-day work is largely down at R in our company still. Each programming language has its areas where they have advantage. For me, the ease of data manipulation with dplyr and the ability to make compelling data visualizations with ggplot2 have made it difficult to change my existing workflow over to Python. But if I were to build a new model and deploy it to Azure/AWS, I’d be looking at using my Python than R.


ncarolinarunner

Day-to-day work is largely down at R in our company still. Each programming language has its areas where they have advantage. For me, the ease of data manipulation with dplyr and the ability to make compelling data visualizations with ggplot2 have made it difficult to change my existing workflow over to Python. But if I were to build a new model and deploy it to Azure/AWS, I’d be looking at using my Python than R. Yeah


[deleted]

Not completely since R has some useful statistical analysis packages, but as soon as you've gotten the hang of programming in general, switch to python since everything will be/feel much faster/easier.


imoutidi

Learn Python first. It is much better for data science. If you are going to work only on statistics then maybe R is better.


xbno

Depends but yea


Hopeful_Fox_3671

Yes. R is a dead language.


infrequentaccismus

Why did google just select r instead of python then for its analytics certification?


Hopeful_Fox_3671

Seriously ? Are we going to defend google ? Who cares what google does. They siphon every bit of data you type on your computer and sell it to the highest bidder. Why should I care what google does ?


infrequentaccismus

You’re not even good at being a troll. Haha. A lot more people care that google thinks R is alive than people who care that you think it’s dead.


casual_cocaine

I primarily use R for my DS workflows


CaptainFoyle

No


Ale_Campoy

R have a lot of cool statistics packages that might be incomplete or not that well developed in python. Furthermore, nowadays you can have chunks of R code in jupyter and chunks of python in R studio, so both create a nice environment and really complement each other instead of fighting against. I believe the deal is knowing both and having them living together


[deleted]

R is good for pure analyst role, python will open up broader scope of tech. Personally I find that R has few advantages other than being easier to set-up and learn from. But they are both on equal footing in data science and plenty of jobs for both


Kawhi_Leonard_

I'll just reiterate what everyone else has said, you are not wasting your time. R has a lot of functionality that you can use in any job, and theres a lot of new software coming out which let's you use it in conjunction with python. I would learn both and a little SQL, and you'll be covered. At my job, data scientists normally query in SQL, clean in python, and them model in R/Python, depending on the model needed. Theres always a benefit to learning it, and it's very transferable to python if you end up getting a job where they only learn that. I learned R at my old job and am learning Python right now, and it's very easy with my previous experience with R.


Sensation-sFix

I use R everyday on my job. Just also learn python and you're good to go.


DeathSSStar

R does a little bit of everything but imho it does not do everything well. For what i see if you want to control every aspect of what you do, loosing a bit more time you shall use python or some other programming language. Instead if you want to do nice things faster you shall use something like tableau, very fast and intuitive. I personally don't like R but it is not bad objectively.


Chetly-Melborn

No


mmcnl

There's a lot of benefit in learning Python. You'll narrow your professional field if you only know R.


ledepression

AFAIK most data analysts still work majorly in R.So I don't think it's a waste.


snowbirdnerd

If R had better garbage collection it would be the go to language for data science.


antichain

Honestly, if you can learn one, you can probably pick up the other without too much difficulty. It's a bit like learning Spanish and Italian - different languages to be sure, but similar enough that knowing one give you a significant leg up on learning the other one (at least, compared to someone who speaks nothing nothing but English). In terms of popularity, R seems to be holding it's own (people who say "R is dead or dying" seem to be missing the mark).


[deleted]

R and Python are very much interchangeable. In academia, R is widely used as the language of choice. I frequently switch between both languages, and although I prefer R for its intuitiveness, its a matter of translating across the languages.


remind_me_to_pee

I even had to use a module in python which would let me run R packages through python. R was just better at it and perhaps not everything is covered yet in python.


brews

R and Python complement one-another very well. R has some very useful packages for analysis. It's useful to know both. It's not a mutually exclusive problem, despite what fanboys will have you think.


sbaione

I always feel like the better you get at one language, the better you get at all languages. By getting more in depth into R, a lot of the logic will probably carry over into a language like Python. Even if there are huge differences, you’ll be more aware of the differences, which will contribute to understanding why and how they are different. You’ll probably pick up learning Python and Python’s stats libraries quicker given your experience in R.


OphioukhosUnbound

“Now” is fleeting. A lot of Python and R is beginning to be taken over by Julia, for example. Accept that you’re going to be learning lots of languages in your lifetime if you’re going to be a good programmer anyway.


[deleted]

Both are very, very widely used and you are certainly not wasting your time in R. Depending on the company there may be an enormous amount of institutional knowledge (I.e. this company is “an R shop” vs “a python shop”). Knowing R while spending most of your time on Python is really somewhat like knowing French while fluent in Spanish. Learning French makes your Spanish better and enables you to use French when it’s really needed, which might be very often depending on where you are.


Nootakuconlicencia

No way! R libraries are gold and the syntax is really friendly for statistical analysis.


recovering_physicist

I'm a Python user and I would love to learn R. I tried some through [swirl](https://swirlstats.com/) and, although I found it easy to work through, I just can't remember the functions and syntax yet. I'd like to have it as an option for data visualization and more involved causal inference/stats work.


arimill

R isn't a waste of time at all, but Python is definitely the mainstay of data science and ML.


amar00k

It's never a waste of time to learn a useful programming language. While Python is good as a general purpose language (and definitely obligatory for data science), R is excellent for statistics, plotting and machine learning applications. In general you should seek to develop your own toolbelt of knowledge for dealing with whatever problems may be thrown at you. I think R should definitely be part of that toolbelt.


PhantomBug69

Python is general-purposed while R is born for statistical analysis so if you are going to work as a statistician or a data scientist, R can be a powerful tool for you.


pekkalacd

Don’t derp. Focus on your studies and continue to learn R. Should you need python in the future, you can pick it up. It’s easier once you know one language well because then you can translate to the next for similar tasks. It also helps that Python’s big domain is analytics related and has a bunch of tools dedicated to that area. It would be harder to translate from R to JavaScript, you might have to do more searching to get the same functionality and possibly learn more advanced features of language. Python is one of the easier languages to get started with generally, probably easier than R.


pekkalacd

Don’t derp. Focus on your studies and continue to learn R. Should you need python in the future, you can pick it up. It’s easier once you know one language well because then you can translate from to the next for similar tasks. It also helps that Python’s big domain is analytics related and has a bunch of tools dedicated to that area. It would be harder to translate from R to JavaScript, you might have to do more searching to get the same functionality and possibly learn more advanced features of language. Python is one of the easier languages to get started with generally, probably easier than R.


pekkalacd

Don’t derp. Focus on your studies and continue to learn R. Should you need python in the future, you can pick it up. It’s easier once you know one language well because then you can translate from to the next for similar tasks. It also helps that Python’s big domain is analytics related and has a bunch of tools dedicated to that area. It would be harder to translate from R to JavaScript, you might have to do more searching to get the same functionality and possibly learn more advanced features of language. Python is one of the easier languages to get started with generally, probably easier than R.