Fast forward it seems like the most widely used tool in computer data analysis. Did something fundamentally change?
Fast forward it seems like the most widely used tool in computer data analysis. Did something fundamentally change?
Data scientists, on the other hand, largely rose from tech companies that hired software engineers and preferred open-source software. When I started in the field ~10 years ago there were very few reasonable open-source options outside of R. Matlab and SAS were prohibitively expensive, Octave was too immature, Python didn't have basic functionality like data frames. In short, it was our only viable option, so we used it. A lot of people started using it for the same reasons, so R's library support became the best. This is what keeps me semi-locked into R - I'll probably eventually move to Python or Julia, but R hit the critical mass first and in a huge way.
edit: I may be using the word library imprecisely here, which may be causing miscommunication. I mean 'packages', to be clear.
I believe An Introduction to R specifically notes that one should use other software to provide R with appropriate data.
But the bigger point I was making is that CRAN (and, as pointed out by bbgm, bioconductor) and R's package system have been around a long time before that. And, unfortunately, was built with _very_ little input from software engineers. :)
edit: incidentally, this is a case where the opensource ideas really help a project. SAS and Stata don't exactly encourage any motivated grad student to rewrite their graphics interface or report generation tools.
----
They can be built by a single prof/grad student.
They can be used by anyone based on R's package-manager GUI.
Research in most fields is going to move more quickly than any software team can add functionality to monolithic programs like SAS. Therefore, most functionality becomes available only in R. Users - people who want to run specialized-domain-function-X on their dataset are best suited by learning R, then using their colleagues packages.
1 - very high usability, particularly (contrast to python) for users who aren't developers, don't think like developers, and don't want to be developers
2 - very high expressibility
3 - it's free, so you can install it on lab computers and your laptop and everywhere else without forking out tons of money (see the price of matlab)
4 - a generate of grad students used it and it, in turn, was taught to a generate of undergrads
5 - academic statisticians tend to like it and tend to implement stats techniques in it, so there's a wide body of shared code on cran implementing most analyses you can think of
2) CRAN, nothing like it for SAS & SPSS.
3) Early adoption by book authors. A whole generation of data scientists were taught in R.
I think this has been a big barrier to any sort of package ecosystem to rival CRAN. Even if your entire target audience has SAS or SPSS, if your new package depended on one or more of those modules, it's going to cost some of your prospective users hard cash to run it. Whereas R just installs the dependencies for you.
2) developing new statistical methods and other innovations (knitr, etc) is much easier in R or S-Plus than SAS, SPSS, etc. So R's improved a lot faster than the others.
Also, R Studio has made the entry barrier to R very low...