8
$\begingroup$

R that originated as a purely statistical tool has meanwhile blossomed into a comprehensive workbench for different tasks. I am familiar with Mathematica and don't like how it forces a license on you. Also the handling of big data and outputting of tables ins quite cumbersome in my opinion.

Meanwhile R offers (beside the statistical tools) via different packages

  • Some support for object oriented coding approach
  • Monte Carlo generators galore
  • Optimization packages
  • Numerical Integration

What functionalities is R still lacking that one needs for everyday quant work? Here "functionalities" also encompass interfaceablity with C++, C#, speed and ease of use.

$\endgroup$
3
  • 1
    $\begingroup$ Ok I purged the comments here, I got your points. If you feel this is opinion-based, vote to close (although I disagree). If you have a concrete example of features of R that are lacking, provide them in an answer. $\endgroup$
    – SRKX
    Commented Apr 4, 2014 at 14:28
  • $\begingroup$ I retracted my vote to close because as it now stands the question is a valid and interesting one. $\endgroup$
    – vonjd
    Commented Apr 4, 2014 at 15:15
  • 1
    $\begingroup$ Old, but related: stackoverflow.com/questions/1738087/… $\endgroup$
    – sashkello
    Commented Apr 6, 2014 at 23:10

3 Answers 3

7
$\begingroup$

For Windows - Parallel processing and GPU computing - are two areas. R has numerous packages for parallel processing but all of them require you to replicate the whole environment for each worker which massively degrades the performance of parallel processing and in most real life cases, there is almost no speed up because of the reduced memory available to each worker. It's getting better in R but still far behind Matlab's super easy parfor function that doesn't need to replicate the environment for every worker.

$\endgroup$
3
  • 2
    $\begingroup$ This is only true using snow/parallel functionality. multicore on *nix uses fork, which only copies when an object on the worker is altered. $\endgroup$ Commented Apr 5, 2014 at 20:18
  • $\begingroup$ my bad. should have added "Windows" to my answer $\endgroup$
    – uday
    Commented Apr 5, 2014 at 23:50
  • 1
    $\begingroup$ Still a good point though. $\endgroup$
    – John
    Commented Apr 6, 2014 at 3:45
2
$\begingroup$

I use both R and Matlab. In my experience Matlab is often more convenient for optimization problems. For example the excellent convex optimization software cvx is written in Matlab. There are also quite a few quants who publish their code in Matlab.

Also debugging in R can be painful - I like R apart from these quibbles.

$\endgroup$
4
  • $\begingroup$ what about R have you ever tried the optimization packages offered for R ? $\endgroup$ Commented Apr 7, 2014 at 11:45
  • $\begingroup$ Yes, I have worked with the 'quadprog' and 'nloptr' libraries in R. I prefer a tightly structured environment such as cvx for optimizations. $\endgroup$
    – Felix
    Commented Apr 7, 2014 at 12:05
  • $\begingroup$ what exactly do you mean by "tightly structured" enviroment $\endgroup$ Commented Apr 7, 2014 at 12:50
  • $\begingroup$ cvx is a modeling environment for convex opt which uses the same syntax as Matlab for objectives and constraints. See the link in my answer for details. $\endgroup$
    – Felix
    Commented Apr 7, 2014 at 13:16
-3
$\begingroup$

the main thing that R is lacking is the proper help and product documentation in comparison to Stata, Matlab, SAS and similar commercial software.

there's a package called OxMetrics, which has an interesting algebraic approach to model specification and scripting. it's hard to explain, but when you use it, it saves a lot of time, because it automates a typical model development life-cycle tasks and steps. I haven't seen a similar functionality in R.

UPDATE: if you speak with R enthusiasts they may say that R has all functionality you need through user supplied libraries. it's a truly open source platform, which comes under GNU license. the open source developers never complain for the lack of functionality, because when they do the standard answer is "why don't you write this module and contribute?" and this is the great attitude, which keeps the community engaged. however, this makes your question somewhat poorly defined, because as i noted, one could claim that any functionality is either already there in some form, or "why don't you write this yourself?"

Hence, maybe you should clarify a bit what do you mean by "lacking" functionality. e.g. I doubt that R has anything close to Mathematica's computer algebra capabilities, but I'm pretty sure someone somewhere might have written something to integrate it with REDUCE or other open-source package.

$\endgroup$
7
  • 10
    $\begingroup$ R manuals/documentation are worse than Stata? No way. I was forced to use Stata 11 at a prior employer and the manuals and help pages were absolutely atrocious. The documentation that ships with base R is generally very good. The same can't be said for all 5000+ packages on CRAN, but at least you have the source code to inspect. You don't have that with Stata, SAS, Matlab, or OxMetrics. $\endgroup$ Commented Apr 4, 2014 at 16:45
  • $\begingroup$ R's help is pretty much useless unless you know how the function works already $\endgroup$ Commented Apr 4, 2014 at 17:11
  • 3
    $\begingroup$ That's true. Too bad the help pages don't have examples showing you how to use them... $\endgroup$ Commented Apr 4, 2014 at 17:27
  • 2
    $\begingroup$ For the larger packages the authors often provide PDF-files that work as a documentation. There are also a lot of books on R for different fields of application $\endgroup$ Commented Apr 5, 2014 at 7:43
  • 1
    $\begingroup$ -1 because the documentation is usually very good and the community is active and expert. $\endgroup$ Commented Apr 5, 2014 at 17:38

Not the answer you're looking for? Browse other questions tagged or ask your own question.