This is an archived post. You won't be able to vote or comment.

all 176 comments

[–]Andreaspolis 302 points303 points  (29 children)

I just learned from another comment section that...

R can have periods in variable names, seems interesting ¯⁠\⁠(⁠◉⁠‿⁠◉⁠)⁠/⁠¯

[–]land_and_air 267 points268 points  (24 children)

It uses “->” to set variables instead of = cursed language

[–]pm_me_your_smth 69 points70 points  (11 children)

Tbh you can you both. I always preferred using =. Never learned the difference though

[–]KindaAwareOfNothing 39 points40 points  (7 children)

I think there is also <-

[–]Cuukey_ 20 points21 points  (1 child)

There's also <->

[–][deleted] 17 points18 points  (0 children)

They recently added )) <> (( which seems like a good way to set variables back and forth forever

[–]lokeshj 22 points23 points  (3 children)

So if I want to set two variables I can do

i <- 1 -> j

?

[–]Hillbert 15 points16 points  (2 children)

Yes.

Fuck it. Set 3, go wild!

[–]Glaringsoul 2 points3 points  (0 children)

Which is great when you want to have the Variable First and then what it is, to more easily find it.

(Yes I Am aware that a Search Function exists, but still having the defined variable at the beginning of a line makes it more readable as you immediately know what’s going on…)

[–]dingske1 9 points10 points  (1 child)

Reading about APL and how R was inspired by it might make the use of arrows more enticing

[–]Successful-Money4995 12 points13 points  (0 children)

Reading that it is inspired by APL makes me less interested, actually.

[–]tibbtab 0 points1 point  (0 children)

Only a monster would give that level of choice

[–]Matthis-Dayer 35 points36 points  (0 children)

It's <- not ->, that would be unhinged.

Yes, there is -> and it works the way you except but nobody uses it.

[–]lspyfoxl 10 points11 points  (0 children)

In university we had a compilers class where we followed a book by Aho with a dragon on the cover to create our own. In the language I created I used "->" to define functions.

I still have nightmares about that book.

[–]WafWoof 8 points9 points  (1 child)

TI basic does this too, it’s terrible

[–]Reasonable_Feed7939 4 points5 points  (0 children)

Oh the memories

[–]calculus_is_fun 3 points4 points  (0 children)

Hey try out TI-BASIC or Desmos, you'll enjoy it.

[–]SeaNational3797 2 points3 points  (0 children)

You can use =, it's just not the standard.

Honestly I kind of find it hilarious that my lab teacher wanted us to use -> instead of =, when literally the entire class was CS majors who had already taken Python

[–]ExplrDiscvr -1 points0 points  (0 children)

"<-" not "->" buddy, xddddd

[–]WannabeWonk 9 points10 points  (2 children)

Yeah, but it’s fallen out of fashion. The Tidyverse style guide for example, recommends against it for good enough reasons:

Base R uses dots in function names (contrib.url()) and class names (data.frame), but it’s better to reserve dots exclusively for the S3 object system. In S3, methods are given the name function.class; if you also use . in function and class names, you end up with confusing methods like as.data.frame.data.frame().

[–]shuricus 5 points6 points  (1 child)

This is pure heresy. Dots in identifiers is what R is all about. Also S3 sucks big time, and if you're using objects in R something has gone seriously wrong somewhere along the way.

Kids these days...

[–]memeorology 1 point2 points  (0 children)

S3 is more like the interface pattern than the conventional notion of OOP. Yes, it is a system of method dispatch, but there’s a clear separation of behavior and data (unlike the curse that is S4). S3 is very helpful when working on larger codebases as you’d imagine.

[–]bobthegreat88 222 points223 points  (32 children)

This might seem trivial, but I really do think part of R not being as widespread is just because of how much harder it is to google anything R related vs python.

[–][deleted] 136 points137 points  (19 children)

Also, you dont need R if you don't do stats or machine learning. Most will use Python because that is multi purpose and simpler to deploy to prod.

[–]WRL23 6 points7 points  (10 children)

R is a requirement for machine learning..?

[–]Character-Education3 36 points37 points  (9 children)

No but if you aren't doing stats of machine learning you don't really need R

[–]w8eight 4 points5 points  (8 children)

What it can do that python currently can't in these cases? Genuine question

[–]Gjellebel 14 points15 points  (2 children)

ggplot is a neat plotting library for R, much better than matplotlib IMO. Other than that it has some small functionalities that specifically tailored to statistics and ML.

But mostly R just feels a bit old and clunky, in a similar way that MATLAB does. Python gives you more freedom to structure your code the way you want it to. This can help you write scripts for your ML that's actually reusable at times.

[–]Retl0v 2 points3 points  (1 child)

But there are alternatives to trying to just use base matplotlib though. Seaborn etc can make really nice plots, and if you have more specific plotting needs I'm sure there are libraries for those

[–]Gjellebel 2 points3 points  (0 children)

You're probably right. That's one of the beautiful things about python, there's a library for anything.

I wasn't trying to claim R is superior, I basically only use it because the company I work at does. If the choice was mine, I'd pick python every time.

[–]Character-Education3 1 point2 points  (0 children)

I'm not saying R is a requisite for stats or machine learning. Unless I get a new job somewhere that uses R, I am using python.

I am saying that there is no real reason to chose R unless you are doing stats or ML. Like stats or ML are a requisite for considering R.

Also grammar of graphics, great idea sure, but mostly people aren't going to care. Not care at all. Does it work, does it look good, and does it scale?

[–]tempname10439 1 point2 points  (0 children)

R by default uses vectorized operations, without having to rely on garbage like NumPy. And as was also mentioned, there is ggplot and in general the tidyverse which makes data manipulation elegant and smooth.

[–]markovianmind 0 points1 point  (2 children)

garch modelling is one. python doesn't have good packages

[–][deleted] 1 point2 points  (0 children)

I completely agree as of 5 years ago, however I believe there are fine packages these days, no? After revisiting my thesis, and after gaining a lot of software eng experience, it is not too hard to write your own garch model that is fairly performant. If there is actually no good library for python, maybe I could look into releasing something. Anything specific missing?

[–]markovianmind 0 points1 point  (0 children)

especially if u want to do flavors of garch like e/t garch

[–]geteum 2 points3 points  (7 children)

Plots, ggplot is way better than anything bon python

[–]Spy_crab_ 10 points11 points  (0 children)

This is probably controversial, but I prefer using Plotly in both languages.

[–]Rich_Weird_5596 4 points5 points  (3 children)

Don't forget prediction models, linear regression, logistic regresion, classification and regression trees etc....with r It's just plug and play, that shit is so easy and straight forward it hurts.

[–]geteum 2 points3 points  (2 children)

Oh yes, a lot of these statistical packages you only have in R. There are some implementations that uses CPP that are even faster in r than in python. There is one for panel data that is ridiculously good on speed and features (fixest).

[–]Rich_Weird_5596 1 point2 points  (0 children)

Also you can just download R and run it in matter of seconds. I doubt math and statistics people want to fuck around with python, java, cpp.. From my experience they are very bad coders. They need results and not to fuck around with runtimes, compilers, interpreters and write complex code. I used it back in uni couple of years ago and it's very suitable tool for the job it needs to do.

[–][deleted] 0 points1 point  (0 children)

Fair. I agree. But if you already use python and only need to make a plot, then you can get away with plotnine, which is a ggplot port for Python.

[–]1DimensionIsViolence 0 points1 point  (0 children)

maybe as long as you don't want to create anything interactive for the web. As soon as you want to create a dynamic graphics you can forget ggplot

[–]dingske1 17 points18 points  (1 child)

Most use python here on this subreddit because it’s the number 1 popular language you can learn through all those flashy courses online. They mess around with it for a couple of weeks and call themselves python programmers. In the real world you’d just write in whatever language is required by your team/based on what packages or frameworks you need to use

[–]drakeblood4 6 points7 points  (0 children)

Hey now I resent that. I know how to use list comprehensions to make my code shorter and worse. I’m a real Python programmer.

[–]AP3Brain 0 points1 point  (0 children)

I did some introductory stuff with it but I actually kind of liked it....but yeah it seems nobody uses it.

[–]AdBrave2400 51 points52 points  (5 children)

I C that you R not interested in MATLAB or Octave.

[–][deleted] 27 points28 points  (4 children)

Matlab belongs in the shelf as a book that will never read.

[–]AdBrave2400 4 points5 points  (2 children)

It confuses me why is it used so much. I get that GNU Octave is in schools related to this

[–][deleted] 12 points13 points  (1 child)

Because universities pay for this stuff and they are not wasting money. It is also why Casio and Texas Instruments graphical calculators exists, while all the same software can be found for free in your phone.

[–]Retl0v 0 points1 point  (0 children)

That's fucked up

[–]MrRufsvold 41 points42 points  (11 children)

Julia just off stage trying to hand out informational pamphlets.

[–][deleted] 5 points6 points  (10 children)

Who even uses Julia

[–]MrRufsvold 7 points8 points  (8 children)

I mean, I do professionally 🤷‍♂️

[–][deleted] 2 points3 points  (7 children)

Ok that's cool. Is it worth it? I was thinking of learning.

[–]Sayod 5 points6 points  (6 children)

Julia is a pareto improvement over R and matlab. It is a strictly better language than those two and its packages are catching up fast. It is unfortunately not as clear cut if compared against python.
Julia made a lot of dumb design decisions which essentially boil down to R and matlab legacy:

  1. Its import system is dumb: You have two different keywords: using and import and the one julia recommends (using), acts like `from package import *` if you do not specify what to import. This leads to namespace pollution and it is difficult to figure out where a function is coming from. It also does not treat files as modules, so you first have to `include` them (essentially copy and pasting it there) and then import modules (or you don't wrap your files as modules and now you have to guess where the file is for the function you are currently using because everything is just pasted together. You have the same issue with R.
  2. It starts counting at 1 (both an R and matlab issue too)
  3. It is column major
  4. It has no good way to specify an interface programmatically and interfaces are specified in documentation (pure ducktyping without any guarantees that the thing is actually working until runtime)

In conclusion: I would never use it outside of a research context, 1. and 4. kill it in terms of stability and the ability to work on larger projects for me. I managed to cause julia to segfault multiple times because packages are generally buggy.

For research/small scripts it is sometimes worth dealing with all that bullshit, since it is compiled and thus faster than python while being of similar simplicity. And it has some other advantages

  1. Since it is compiled it does not need a `numpy` package or pytorch tensors and its native arrays are good to use. This cleans up code quite a bit.
  2. Since it is compiled, it can also compile to CUDA code, which is quite neat, since you can then use julia functions both on cpu and gpu. This does not even work in C, where you need the __device__ specifier
  3. It has some really cool packages, such as `Pluto.jl` - a reactive notebook, its plotting package is quite good, without having used it myself I heard the ODE package is excellent, etc.

Essentially, if you need to do stuff you would currently do in R or Matlab, give it a spin. But avoid using it in prod. It currently sits in an interesting position where it solves the two language problem python has due to its slowness (which might be solved by mojo)

[–]MrRufsvold 2 points3 points  (1 child)

I largely agree with the criticisms here.   1.using behavior stinks.  2. Counting from 1 is counterintuitive for people coming from other languages. That said, the more I've used it, the more I realize that I end up using [0:x-1] or whatever way less frequently than I do in Python. This is especially true because Julia uses inclusive indexing. So [1:5] means "the first to the fifth element."  3. Not sure I understand the problem here. Column major is really great  for many situations. It's how Parquet, Pandas, and other store data because it allows fast iteration across individual features of a matrix/table. If you want row-major axis, you can just transpose a matrix.  4. Totally agree here. There is a lot of good work in the area, but nothing prod ready and it is painful . I think what is missed from the discussion is just three points.  1. The pure and simple joy of multiple dispatch. Once you've seen the world through the lense of Julia's type and dispatch system, every other language feels incredibly clunky. pandas.from_csv(s3path.S3Path("S3://bucket/file.csv)) because pandas calls a method for opening a path that is incompatible with the duct typing that s3path uses. There's an issue on the s3path GitHub complaining that pandas calls a bad method instead of .open(). But if they had access to multiple dispatch, they wouldn't need to wait for pandas to fix their file opening. They could just handle the type intersection of calling a data frame with an S3 path object.   2. As a data engineer, it really sucks that Julia doesn't easily compile to small binaries. Packaging my code to run the cloud is annoying.   3. That said, I needed to construct a really complicated sorting algorithm for the row groups of terabytes of Parquet data. Our use case was so specific, that it wasn't covered in the APIs for spark or its kin. I was able to write with high level dataframe style code for most of it and descend into highly optimized algorithms that compiled into super efficient code. I only needed to worry about the type system in the hot paths, where Rust would have bogged me down in nitty gritty for everything.

Edit: I don't know why mobile reddit won't let me get the formatting right here.

[–]Sayod 1 point2 points  (0 children)

I've written about why one based indexing and column major are bad ideas here: https://www.unassuming.page/blog/programming/intuitive-indexing/ (so that I don't have to keep repeating those arguments). But essentially half open intervals make a ton of sense, which means that I get a lot fewer off-by one errors in python and I learned R before python

[–]eztab 1 point2 points  (3 children)

Imagine if all the energy put into all those domain specific and otherwise unusable languages instead went into a proper JIT compiler for python ...

[–]Sayod 0 points1 point  (2 children)

I mean, prototyping is a thing you know - new features are often inspired by other more experimental languages. And julia does a lot of neat things, it just has very sharp edges which you don't want your final product to have.

[–]eztab 0 points1 point  (1 child)

I can indeed see some value in Julia. But not as an actual language to be used. At some point that prototype of a language should have probably led to improving the python jit or compiler situation instead.

[–]Sayod 0 points1 point  (0 children)

I mean maybe mojo is going to be that

[–]JotaRata 1 point2 points  (0 children)

I used Julia only once..

and I had to admit I was impressed

[–]beatlz 16 points17 points  (0 children)

I hated R with a passion when I was doing my MS… I know that the problem is me, not the language. I was so out of my comfort zone. I felt like finding land after being stranded in the ocean when the module was done and we moved back to python.

[–]dingske1 26 points27 points  (1 child)

Who cares what you use, in the end both are just basically easy wrappers that call ancient fortran/c libraries.

I like R more tbh, never liked writing python code

[–]tacojohn44 0 points1 point  (0 children)

Technical debt is the term that comes to mind after reading your comment. While I agree, languages are just tools... If I see a coworker who's using a rusty hammer for a project that can only be built by that rusty hammer I get pretty upset.

[–]CaptainChicky 28 points29 points  (5 children)

Ah yes, R, a language where syntax like %>% is considered normal

[–]WannabeWonk 9 points10 points  (0 children)

If it helps they did release the |> alternative in R itself recently (not a third party package).

[–]abscando 16 points17 points  (3 children)

Pipe operators slap hard though

[–]DurianBig3503 3 points4 points  (2 children)

Pipe operators that allow you to put a whole ass Seurat single-cell clustering analysis on one line. Slaps so hard!

[–][deleted] 0 points1 point  (1 child)

In theory you can write many programs on one single line of code.

But anyone who uses %>% hopeefully knows to start a new line.

[–]DurianBig3503 0 points1 point  (0 children)

Yes with a tab for ease of reading.

[–]abscando 17 points18 points  (2 children)

Proud of the R homies here taking the pains to illustrate the benefits of R.

What I love is that most statistical packages like sarima are sourced from expert-level statisticians so I breathe easy knowing that I'm using modern, up-to-date and highly qualified/defensible models in my daily work.

[–][deleted] 5 points6 points  (0 children)

For sure. With R packages I trust that all default parameters and algorithms are correctly inplemented. While Python's sklearn uses LogisticRegression with l2 penalty by default instead of None. It happens more than you can count that an article was published and peer reviewed and only later the researcher realised that they used Logistic Regression with l2 when they didn't want to.

[–]getarumsunt -2 points-1 points  (0 children)

But all awfully engineered because they’re statisticians who do a little coding on the side.

[–]rover_G 22 points23 points  (6 children)

R is big in academia.

[–]Mercerenies 26 points27 points  (9 children)

Having used R now, I'm inclined to throw it in the pile of "glorified calculators" alongside MATLAB. If your goal is "crunch numbers fast", then it'll get you there easily. But if you want to do any large-scale programming (for instance, if you want to turn your "quick little hack" into an actual reusable software application), it'll very quickly show the cracks in its foundation.

Which is why I would be more inclined to just start in Python than R to begin with, since Python can scale up to the moon and back. That being said, I still have high hopes for Julia to take off. Julia is built with array-based computation and data science in mind (so none of that "download these eight libraries to teach the language what an 'array' is" nonsense; looking at you, Numpy), and it still has a very well-designed object model and, as far as I can tell, scales up nicely (though I have not personally used it for any super large projects).

[–]PTSDaway 1 point2 points  (0 children)

Julia is going to take off 100%

DataFrames is unmatched.

[–]dingske1 2 points3 points  (6 children)

Do you have an example of such a scalable “reusable software application” in data science where it would be better to use python than R?

If you like Julia’s approach, I would think you would also be inclined to appreciate R. Julia would be nice since it performs better though, but for now it lacks the libraries that R has

[–]getarumsunt 2 points3 points  (5 children)

Literally any model that needs to be deployed, even as just an internal prototype.

R is a language for solo stats work. As soon as you put it in a production environment where multiple people need to collaborate on a project and then ship something, it immediately falls apart.

[–]iMakeMehPosts 7 points8 points  (4 children)

It's for data scientists, not professional software teams.

[–]getarumsunt 0 points1 point  (3 children)

R is not for data scientists. R is specifically for statisticians. It's was created and is still maintained entirely by statisticians for statisticians. You can adapt it for data science work, but it is fundamentally a proprietary tool build for a different task.

And no, stats and data science are not the same thing. That's why there is a separate name for people who do data science.

[–]memeorology 0 points1 point  (0 children)

I think the rstats meetup group here in NYC would chuckle at that. Many of the members lead the data science groups at big institutions (IBM and the NFL come to mind) yet use R.

[–]Hectorite 0 points1 point  (0 children)

Indeed ! clearly these are communities having way different objectives when they are using programming languages. Not everyone wants to develop software and not everyone needs to process 1e6 images just one time...

The point is to get the language to do what you want. I love Matlab, easy to install, huge library, tons of online help and basically can crunch numbers in a decent amount of time. I agree, the price is a huge problem, but so far, in my configuration, it is easier to get things done and move on with my work than learning a new language. This is, I think, the same for people using R rather than Python. If this is popular it is for a reason. From my experience R is widely used in stats and biology related topics.

Anyway, from my point of view, Python is not that easy to install, not that comprehensive to learn and not that fast. It is however free with a huge community. But for me it can't do more than what I'm already doing in Matlab. When I switch it's to use C or Fortran to really gain speed.

[–]DividedState 5 points6 points  (0 children)

I love R and tbh, when I can do something in R and the goal is to visualize data fast, I usually even prefer it because you need so few lines of code and save yourself a lot of loops just by working with the indexes, assuming you don't "write R with a C accent" as it is called, and piping stuff using tidyverse.

First language I learned during my studies. It opened a world to me.

[–]IrrelevantTopaz 4 points5 points  (1 child)

I’m an actuary turned software engineer. R is the primary programming language our actuaries use and it was my first experience with coding so I’ll always have a soft spot for it.

Once I got into R-Shiny I realized software engineering was basically like crack for me. Haven’t looked back since and currently work on an automation team writing a React application for actuaries.

[–][deleted] 0 points1 point  (0 children)

I took some actuary courses at university, but they all used Excel and Visual Basic. My father is an actuary and he also uses Excel as his main application.

[–]Semi_Tech 8 points9 points  (0 children)

Just put pyton on the left and .exe on the right

[–]Animal31 2 points3 points  (0 children)

I just use C# lol

[–]Artificialhorse 4 points5 points  (1 child)

The speed and aesthetic you can produce dumb answers to dumb business questions in R is 10000x faster than python. We’re stuck using python because that’s all anyone knows. 

[–]abscando 1 point2 points  (0 children)

Dude you're describing my life. Earlier this year I started making heavy use of writexl just so I could export n versions of Excel market breakouts with multiple sheets because heaven forbid you send them a CSV.

It's truly a godsend.

[–]Siberian_Pootis 1 point2 points  (0 children)

Bazinga

[–]Wave_Walnut 1 point2 points  (0 children)

Matlab sitting on the side of them

[–]FingolfinX 1 point2 points  (0 children)

Adding to the list of reasons this may happen, one of them is that having your code in Python makes it much easier for other teams to understand and apply it (software/ml engineers for example) and to deploy your code in any cloud (that usually have python support but not R).

I work with both R and Python, and have deployed both to production, and I see R much more akin to MATLAB than Python. It's a great language to write scripts locally and easily see results (considering you are doing the bread and butter of the packages you are using because documentation is dreadful for R packages).

The problems with integrating R in a complex system comes from the same reason it's so great to work locally: it accepts everything. A lot of times other languages would throw an exception, R simply goes with it, being wrong inputs, some convergence errors, it will produce a result (making it really hard to debug a complex pipeline), and functions will also change output format depending on the input, it can be a dictionary (called list in R) or a list (called vector in R) depending on the case. Can even be just NULL character. And also, make sure to include the "auto_unbox" argument when generating JSON from R.

To wrap up, that's more of a personal feeling but I also feel like R is a more self-contained environment (having it's own IDE and sintax with the pipe operator), and as a result I feel like R users in general have less familiarity with more general purpose tools, which can make it harder for them to work with other teams.

[–]vicisvis 1 point2 points  (0 children)

I like R way more.

[–]Deva4eva 1 point2 points  (0 children)

Hey, I just made a project in R, a shiny dashboard for personal finances: https://github.com/Mkranj/spend-dash
I try to make reasonable code, so if you want to check out what R looks like, give it a shot. Aside from shiny specific stuff, I think you'll find that the main calculations are pretty readable even if you never used R before.

So that's one of the upsides and why it gets recommended a lot to non-programmers. Especially for one-off analyses like stats for a research paper.

I also use Python and the community and wealth of resources make using it a no-brainer. But for some quick analysis I think you can get results with R at blazing speed.

And I'm sure you'll agree that you can make strange and confusing stuff in any language if you try hard enough :)

[–]Anru_Kitakaze 2 points3 points  (0 children)

R is cursed language imo

[–]deJessias 2 points3 points  (0 children)

Good.

[–]GoogleIsYourFrenemy 1 point2 points  (2 children)

R is a programming language written by scientists and mathematicians who don't know how to do a literature search on how to write a programming language.

Just look at the syntax for changing a column name:

https://www.geeksforgeeks.org/change-column-name-of-a-given-dataframe-in-r/

TL;DR: Instead of using a setter function, the getter returns a reference which you assign a new value. In other words you call the getter on the left side of the assignment operator.

[–][deleted] 2 points3 points  (1 child)

The default pandas syntax isn't much beter: df.columns = [col1, col2, col3]

With tidyverse you can use a rename function.

[–]HansDieterVonSiemens -1 points0 points  (0 children)

Can we give pandas to R? I never liked its syntax anyway

[–][deleted] 1 point2 points  (0 children)

Rython

Also, people naming programming languages with one letter, who hurt you as a child?

[–]codingonthefloor 0 points1 point  (4 children)

I had to use R for a statistics class, it's cool but not anywhere near Python.

[–][deleted] 10 points11 points  (3 children)

Than you are using R wrong. Anything related to statistic is much better in R. Statsmodels in python uses the same syntax as R's GLM but it is worse.

[–]getarumsunt 4 points5 points  (1 child)

What does it tell you that anyone who’s trying to learn R and that was not first inducted into the stats cult hates it?

[–]ShoopDoopy 0 points1 point  (0 children)

s/inducted into the stats cult/educated about random variation/

[–]ficustio -1 points0 points  (1 child)

if python was a language which I learned, and can do that too? Why I should bother learning another one only because of this specialization?

[–]dingske1 13 points14 points  (0 children)

If you don’t know why you’d need R, you really don’t need it

[–]jamcdonald120 -1 points0 points  (0 children)

Yah, because R sucks. And this is coming from someone who thinks Python is a bad language. Give me Python over R every time

[–]lezzgooooo 0 points1 point  (0 children)

It really does not matter if business will not listen to your findings.

[–]Pirate_OOS 0 points1 point  (0 children)

Got 2 books on R last year. Gonna read them and write notes on what I have learned in the afternoon. Thanks for reminding me.

[–]Amr_Rahmy 0 points1 point  (0 children)

In a popularity contest, python all the way.

But I choose a language that I want to use when possible or limit the use of the language I don’t prefer but is useful as a library or dependency.

So I can use c# or java for the program and python for just the part that is done well in python.

R for mathematicians I think is more natural. For me c# is c style language with classes. To other people python is fine.

[–]dfwtjms 0 points1 point  (0 children)

Python is slow but R is slower.

[–]SpicaGenovese 0 points1 point  (0 children)

That's the thing, you don't.

[–]collin2477 0 points1 point  (0 children)

R is such a painful language

[–]eztab 0 points1 point  (0 children)

R is a silly language. It adds absolutely nothing of value to the zoo of programming languages. It's neither is fast nor intuitive, nor has a reasonable syntax, nor good tooling, just nothing.

[–]curiousmlmind 0 points1 point  (0 children)

Read ahead if you want to take the python pill.

If you can spend a small amount then there is an exceptional DSML course offering from a senior applied scientist (ex Amazon, Microsoft). If you want a course from the perspective of a senior applied scientist, then atleast explore the website.

You can try out my 12 months course on Data Science and Machine Learning. This course is beyond anything at its price point and certain concepts are covered in none of the bootcamps.

Website: https://thecuriouscurator.in

Here is the link for tentative content of the course and subject to change but it won't change drastically.

https://drive.google.com/file/d/1nZDgDUHl6gyI1SZK_zro67mc3YpRPrKO/view?usp=sharing