13 ms·
Glad you're still interested! I agree–R is light-years ahead of the competition (Python, essentially) in most statistical domains. It seems to fit the workflow
by et2o 8y ago
Glad you're still interested! I agree–R is light-years ahead of the competition (Python, essentially) in most statistical domains. It seems to fit the workflow better.
- skydaddy 8y agoLight years ahead? It doesn't even support 64-bit integers. The R language cannot count past 2.1 billion. In 2018. Don't get me started on the package system.
- clircle 8y agoI'm always hearing about these and other problems that programmers have with the R language. In practice, none of them seem to be a big deal to statisticians. 64 bit integers? Never had a need for this, but maybe there is a package that can add them in? What's wrong with the package system? I maintain an R package on CRAN and I'm quite smitten with the package system.
- z2210558 8y agoI think bit64 gives integer64, but like you I never need large integers - I don't do general purpose programming in R.
- infogulch 8y agoWhat is the overflow behavior? If it fails and warns you that some operation overflowed, I don't see an issue.
- disgruntledphd2 8y agoIt converts really large integers to floats, which can lose precision. You need to handle really large numbers as characters, or use bit64. I only really started hitting this in the private sector though, never a problem when I was in academia.
- infogulch 8y agoOh. That's kindof... gross. Better than wrapping silently I guess. Can you at least tell when a number has been 'promoted' to a float so you know you need a bigger type?
- another-one-off 8y agoAlso fairly critically; a mathematician can go from assuming that one exists as a concept to multiple ordinals of infinity with about 20 minutes of scribbling. The fact that 64 bit is a modern standard doesn't exclude the fact that R cannot under any circumstance handle the vast and overwhelming majority of known numbers. I feel sorry for the poor souls who turn out to need it, though. R sucks like that.
- bsg75 8y ago> 64 bit integers? Never had a need for this, but maybe there is a package that can add them in? https://cran.r-project.org/web/packages/bit64/index.html https://cran.r-project.org/web/packages/bit64/index.html
- srean 8y ago> I'm always hearing about these and other problems that > programmers have with the R language. In practice, none > of them seem to be a big deal to statisticians. > 64 bit integers? Never had a need for this This kind of thinking is pervasive in a wide corner of statistics and this is pretty much why machine learning stole its crown, that's why I get to hear quips like "Statistics ? Is that even relevant ?"
- nightski 8y agoCrown of what? They are complementary fields. Try doing ML without any statistics and lets see how far you get.
- srean 8y agoThey are closer than complementary and that is exactly what I am trying to point out. How much funding, support, mind share, conferences, venture capital yadda yadda does stats get compared to ML -- thats what I mean by losing its crown. All that ML has now could easily have been stat's were it not for the attitude I draw attention to. Isnt that sad, given that ML in many cases is just stats without the baggage "R can solve all of my problems and whatever R cant solve isnt a stats problem"
- nightski 8y agoYes I agree wholeheartedly, sorry I originally missed your point. I do think it's more of a DL vs. the world problem than stats vs. ML but everything you said rings true. I was kind of odd in that I started with DL and then became fascinated with statistics and lost focus with DL. Statistics is just so much more useful outside of the niche domains where DL is extremely effective.
- srean 8y ago> Statistics is just so much more useful outside of the niche domains where DL is extremely effective. This. Sorry had to.
- et2o 8y ago32 bit integers or not, that's a bit tangential to R's dominance as a statistical language. I work in population-level genomics and haven't found this to be a problem (yet?). Furthermore, what's wrong with the package system? That's one of R's strengths. I honestly find it far superior to python's 10 different solutions, none of which really work in a foolproof manner (and I use both languages daily).
- creddit 8y agoThat's not true. The bit64 package works just fine for 64 bit integers. Also, for most use cases in R's domain, it doesn't even matter.
- msaharia 8y agoA language is made popular by its ecosystem. R has not only the latest statistical tools implemented through packages but also domain-specific ones. I use both R and Python, but for data analysis, modeling, and plotting - R is much ahead of Python. Find an obscure or cutting edge method, and chances are someone has implemented it in R. And the package system is absolutely smooth. I have never till today had any issue and I have used it on a weekly basis for the past 6 years.
- safgasCVS 8y agoWhats your issue with the package system? Genuinely curious
- disgruntledphd2 8y agohttps://cran.r-project.org/web/packages/bit64/index.html https://cran.r-project.org/web/packages/bit64/index.html I agree that its pretty annoying though.
- YeGoblynQueenne 8y agoI think I once had a problem with R's package system that I couldn't resolve without pulling from a project repository. With python, it seems every other pip install I do causes some kind of error that regurgitates a metre of error messages and ends up asking me to compile a couple of packages myself, and whatnot. R has a lot of antiquated, clunky syntax and libraries and mightily unhelpful package documentation, but one thing that isn't borked is the package system - and that's especially compared to python.
- gaius 8y agoMy heuristic is: if my program is going to be 80% NumPy and friends anyway then R is probably better but if it’s going to be only 20% (e.g lots of user interface code or whatever) then Python is better. I probably wouldn’t use R for anything end-user-facing unless it was via Shiny, whereas I might use WxPython for a desktop app. For interactive, exploratory/research use R in RStudio beats Python in Jupyter hands down.
- zaarn 8y agoHad to learn R for a statistics course. It was honestly the worst programming language I've ever used and I've once wrote something in Malbolge. The package system is absolutely horrid, a barely working mess if I ask it anymore complicated than "install package, any version is fine". Installing older packages because my distro lacked a compatible library for the newest was met with rather bizarre error messages. I think Latex has solved this much better. Even NPM solved this better. If NPM has solved package managing better than your solution it's time to rethink your life choices because that is a very low bar. The object and type system seems to be made of wet tissue paper, I always feared that staring at the code too long might break it. It also doesn't help that every package has invented a completely new way to pass parameters, how to name parameters and functions and how it all sticks together. Also nevermind trying to read numbers larger than a signed 32bit number, R can't handle anything beyond 32bits for reasons that aren't entirely clear to me. Though last I tried it was very happy to just dynamically convert to a float32 instead which immediately makes it worse than Javascript because atleast Javascript's Number type is consistently a float and doesn't magically turn into the burnt remains of my hopes and dreams. On top of all that horrid stuff sits R Studio. When first installed on my computer, R Studio was of the opinion that the best option was to install itself as default program for EVERY SINGLE FILETYPE completely ignorant on if it understands it. I'm still trying to cleanup my laptop from the mess it made. The IDE has varying opinions on how to write programs, usually none of the good ones. It also likes to sprinkle it's caches and configs and other files into every corner of my filesystem. Every folder is Free-For-All for this IDE. My home directory should not be used to re-enact scenes from Battle-Royal shooters, especially not by tools meant for developing software. It's not light years ahead of the competition, it's not even competing. It's sitting on the sidelines trying not to fall over from the stress of being outside and exposed to the elements. I'm happy I passed my statistics course because I will never ever touch this language again. Ever. I'm still cleaning up the pieces from using it for only half a year and I would rather port the Linux kernel to Brainfuck before using this language. Sorry to unload all of that on you but I'm very frustrated with R.
- zwaps 8y agoOkay so Rstudio had a bug and R doesn't support realky big numbers that you will never need except with a add on package. Horrible. Seriously though, R is lightyears ahead in things that actually matter. There are hundreds of advanced statistical models that you can only run in R. Coded by the people who invented those models, most likely. Python can do basic linear models via statsmodels, that's pretty much it. Not enough to cover even the baseline of common data processes or inferential tasks of a researcher or statistician. So either R, commercial packages or you code everything yourself, which makes so sense for hundreds of reasona, among them that you have to study the R codes of the authors anyway. So please, be real