4 ms·
I like R for many things, but Python just keeps getting more compelling, particularly given the excellent machine learning packages. As these sorts of toolchai
by wanderfowl 8y ago
I like R for many things, but Python just keeps getting more compelling, particularly given the excellent machine learning packages. As these sorts of toolchain elements get better and better, and as more people realize that there's a benefit to simultaneously training researchers to run code as well as stats, I suspect we'll start to see an exodus from pure R solutions.
The real question is when (and whether) new social scientist stats courses will start teaching Python stats toolchains, rather than R. That seemed to be an inflection point for R (as folks moved away from SAS), and could be for stats-centric Python too.
- isatty 8y agoYou may want to try Julia
- WhompingWindows 8y agoThe migration between languages is also industry specific. They are still teaching SAS to finance and healthcare analysts, for instance, and R and Python are still rising in healthcare specifically. Keep in mind all the legacy code and all the coders who just know SAS and don't need to change. It'll take longer for the transition than you think.
- bigger_cheese 8y agoI have tried to move from SAS to R a few times at this point it's largely inertia there is so much in my org already written in SAS makes it very difficult to convince people to change. I do like the SAS dev tools (especially Enterprise Guide). I'd really love if R had some sort of GUI front end for non technical people. Eg. I know the finance analysts in our org wouldn't have a clue how to configure their own ODBC sources -which you need to do with R Studio until it's as easy for them as SAS convincing them to switch won't get any traction.
- mattkrause 8y agoIt seems to depend on what you’re doing. Python definitely has more mindshare for machine learning, and particularly deep learning. However, that’s not all of statistics. For things like mixed-effects modeling, I think R still has a clear lead. There are some python packages (e.g., statsmodels) but R’s lme4 has more features, like custom covariance structures, and virtually every textbook and tutorial currently uses R. I’m actually not sure if I’ve ever actually encountered statsmodels in the wild. PyMCMC is relatively popular, but I think bugs/jags are also more common.
- peatmoss 8y agoAnd then there is the Zelig modeling framework for R that I can’t imagine not using after having used it. Don’t get me wrong, I like Python well enough, and knew it before I coded R. But Python is really behind R in stats support. I’d also add the tidyverse in there for general data munging. If I want libraries I’ll use R; if I want a programming language I love I'll use Racket or maybe Clojure; if I want some libraries and an okay programming language I’ll use Python, I guess.
- haskellandchill 8y agoWoa, thanks for pointing out Zelig, I needed that relogit and I didn't even know it :)
- peatmoss 8y agoThe counter factual simulation features are amazing and easy.
- haskellandchill 8y agoWondering why it hasn't got more publicity?
- saosebastiao 8y agoI'm definitely well in the R camp but keep feeling this nagging pull from Python. Especially for trading...it would be so nice to have a language for both research and production, as right now I translate all my research into scala for production.
- currymj 8y agoI hate to be the stereotypical Julia recommender, but it is made for this use case, more so than Python, which isn’t all that much faster than R if speed matters. (Unless you want to try Cython but that’s a whole bag of worms.)
- fjuerfilis 8y agoI'd second that. R and Python both have the same pre-LLVM performance issues. I don't expect either R or Python to go away either time soon, nor would I want them to, but I would like to see people moving to things like Julia and Nim, which have the same level of expressivity, but are much more performant. I have difficulty imagining many people saying "I love programming in R and Python, but don't like Julia or Nim." I like Python but at least with stats/numerics there isn't a big reason to move away from R except for specific libraries (especially DL stuff) or front-end integration with web-land (and even then things like Jupyter mitigate against that).
- currymj 8y agoI would also add two good reasons to stick with R: RStudio and Hadley Wickham. In theory, there are Python and Julia equivalents to RStudio (JupyterLab, Spyder, PyCharm, Juno, whatever) but RStudio is just so, so, so good. A truly great piece of software. And of course if you have a data pipeline type workflow, and it fits into the Hadleyverse paradigm and isn't too performance intensive, there's nothing better.
- byt143 8y agoJulia has it's own "*verse" type data pipeline framework, with an even greater variety of backends and plotting solutions than R. It's still in development (mutate and select have PRs) but it's almost there. https://github.com/queryverse/Query.jl https://github.com/queryverse/Query.jl
- thousandautumns 8y agoI'm not sure what about Jupyter makes Python more compelling in comparison to R. R is entirely usable in Jupyter Notebooks, and R Notebooks are, in my opinion, possibly superior to Jupyter notebooks in many ways. > and as more people realize that there's a benefit to simultaneously training researchers to run code as well as stats, I suspect we'll start to see an exodus from pure R solutions I'm not sure what you are saying here. I would actually argue that most of the Python data science toolchain is years behind what is available in R.
- achompas 8y ago> I would actually argue that most of the Python data science toolchain is years behind what is available in R. I do not want to litigate this on HN, but the problem with R is the toolchain around your data science work. You've fit a model in R, and that's great! Now how do you get it into a real-time system? Or how do you test the software you wrote to train the model?
- williamstein 8y ago> R is entirely usable in Jupyter Notebooks Not for everybody, e.g., the Swirl R package (https://swirlstats.com/ https://swirlstats.com/) doesn't work in Jupyter, since Jupyter has limited support for R's many ways of getting interactive input from users.
- mike_ivanov 8y agos/possibly/definitely/