October 13th, 2009, 7:51 pm
R is good in small-scale prototyping or as an extremely advanced calculator.But R has its deficit in dealing with large-scale data in terms of both performance and reliability.I used R for processing GBs of microarray (genechip) data for pattern recognitions -- the programming bit is similar if not better than Matlab especially for probability-based models. Matlab is more matrix-oriented.However, R's not very well written as a high-perf numerical system -- when data table is large, in its GBs, your system memory becomes some sort of scarce resourse; after a while it's often to see R stops responding, or even the system lags (in case of Windows) significantly. It does not have an optimal strategy to read file in chunks. R is not for multithreading either. Thus the performance for a lot of pattern recog or signal processing tasks is poor. Also worth noting is that the 'language' bit of R, e.g. if/while statements, have pathetic performance as it is not the 'correct' way of programming in R. You should use vectors/data adapters wherever possible.R has a strange way of handling default/named parameters of functions.R lacks an 'official' IDE but there are a few good third-party ones. There are also a large repository of 3rd party R packages, many being very useful and specialised.Debugging in R is a pain. In my days of using R (2.3.1 I recalled), I relied on printing out values of variables. That's about all I know.