[R] anti-R vitriol

Liaw, Andy andy_liaw at merck.com
Tue Jun 29 20:20:41 CEST 2004


> From: Barry Rowlingson
> 
> A colleague is receiving some data from another person. That person 
> reads the data in SAS and it takes 30s and uses 64k RAM. That person 
> then tries to read the data in R and it takes 10 minutes and uses a 
> gigabyte of RAM. Person then goes on to say:
> 
>    It's not that I think SAS is such great software,
>    it's not.  But I really hate badly designed
>    software.  R is designed by committee.  Worse,
>    it's designed by a committee of statisticians.
>    They tend to confuse numerical analysis with
>    computer science and don't have any idea about
>    software development at all.  The result is R.
> 
>    I do hope [your colleague] won't have to waste time doing
>    [this analysis] in an outdated and poorly designed piece
>    of software like R.
> 
> Would any of the "committee" like to respond to this? Or 
> shall we just 
> slap our collective forehead and wonder how someone could get 
> such a view?
> 
> Barry
 

My $0.02:

R, being a flexible programming language, has an amazing ability to cope
with people's laziness/ignorance/inelegance, but it comes at a (sometimes
hefty) price.  While there is no specifics on the situation leading to the
person's comments, here's one (not as extreme) example that I happen to come
across today:

> system.time(spam <- read.table("data_dmc2003_train.txt", 
+                                 header=T, 
+                                 colClasses=c(rep("numeric", 833), 
+                                              "character")))
[1] 15.92  0.09 16.80    NA    NA
> system.time(spam <- read.table("data_dmc2003_train.txt", header=T))
[1] 187.29   0.60 200.19     NA     NA

My SAS ability is rather serverely limited, but AFAIK, one needs to specify
_all_ variables to be read into a dataset in order to read in the data in
SAS.  If one has that information, R can be very efficient as well.  Without
that information, one gets nothing in SAS, or just let R does the hard work.

Best,
Andy




More information about the R-help mailing list