Re: [R] New project: littler for GNU R

From: Gabor Grothendieck <ggrothendieck_at_gmail.com>
Date: Wed 27 Sep 2006 - 02:17:43 GMT

The real problem is that one wants to pipe the data in, not the R source. The idea is that one successively transforms the data in successive elements of the pipeline.

For example one might want to write cut, grep, etc. in R rather than in C.

This has been on my year-end wishlist for some time.

On 9/26/06, Duncan Murdoch <murdoch@stats.uwo.ca> wrote:
> On 9/26/2006 1:04 PM, Jeffrey Horner wrote:
> > What ?
> > ======
> >
> > littler - Provides hash-bang (#!) capability for R (www.r-project.org)
> >
> >
> > Why ?
> > =====
> >
> > GNU R, a language and environment for statistical computing and
> > graphics, provides a wonderful system for 'programming with data'
> > as well as interactive exploratory analysis, often involving graphs.
> >
> > Sometimes, however, simple scripts are desired. While GNU R can
> > be used in batch mode, and while so-called 'here' documents can be
> > crafted, a long-standing need for a scripting front-end has often
> > been expressed by the R Community.
> >
> > littler (pronounced 'little R' and written 'r') aims to fill
> > this need.
> >
> > It can be used directly on the command-line just like, say, bc(1):
> >
> >
> > $ echo 'cat(pi^2,"\n")' | r
> > 9.869604

>

> Is there a technical reason that this couldn't work by modifying the
> script that invokes R? That would avoid the r/R clash on MacOSX and
> Windows. In Windows R is R.exe, not a script, so some adjustment would
> be needed there, but that shouldn't be difficult.
>

> Duncan Murdoch
>

> >
> > Equivalently, commands that are to be evaluated can be given on
> > the command-line
> >
> > $ r -e 'cat(pi^2, "\n")'
> > 9.869604
> >
> > But unlike bc(1), GNU R has a vast number of statistical
> > functions. For example, we can quickly compute a summary() and show
> > a stem-and-leaf plot for file sizes in a given directory via
> >
> > $ ls -l /boot | awk '!/^total/ {print $5}' | \
> > r -e 'fsizes <- as.integer(readLines());
> > print(summary(fsizes)); stem(fsizes)'
> > Min. 1st Qu. Median Mean 3rd Qu. Max.
> > 13 512 110100 486900 768400 4735000
> > Loading required package: grDevices
> >
> > The decimal point is 6 digit(s) to the right of the |
> >
> > 0 | 00000000000000000011112223
> > 0 | 5557778899
> > 1 | 112233
> > 1 | 5
> > 2 |
> > 2 |
> > 3 |
> > 3 |
> > 4 |
> > 4 | 7

> >
> >
> > And, last but not least, this (somewhat unwieldy) expression can
> > be stored in a helper script:
> >
> > $ cat examples/fsizes.r
> > #!/usr/bin/env r
> >
> > fsizes <- as.integer(readLines())
> > print(summary(fsizes))
> > stem(fsizes)
> >
> > (where calling /usr/bin/env is a trick from Python which allows one
> > to forget whether r is installed in /usr/bin/r, /usr/local/bin/r,
> > ~/bin/r, ...)
> >
> > A few examples are provided in the source directories examples/
> > and tests/.
> >
> > Where ?
> > =======
> >
> > littler can either be downloaded from
> >
> > http://biostat.mc.vanderbilt.edu/LittleR
> >
> > accessed by anonymous SVN:
> >
> > $ svn co http://littler.googlecode.com/svn/trunk/ littler
> >
> > or (soon !) be gotten from Debian mirrors via
> >
> > $ agt-get install littler
> >
> > littler is known to build and run on Linux and OS X.
> >
> >
> > Who ?
> > =====
> >
> > Copyright (C) 2006 Jeffrey Horner and Dirk Eddelbuettel
> >
> > littler is free software; you can redistribute it and/or modify it
> > under the terms of the GNU General Public License as published by
> > the Free Software Foundation; either version 2 of the License, or
> > (at your option) any later version.
> >
> > This program is distributed in the hope that it will be useful,
> > but WITHOUT ANY WARRANTY; without even the implied warranty of
> > MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
> > General Public License for more details.
> >
> > You should have received a copy of the GNU General Public
> > License along with this program; if not, write to the Free
> > Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
> > MA 02111-1307 USA
> >
> > Comments are welcome, as are are suggestions, bug fixes, or patches.
> >
> >
> > - Jeffrey Horner <jeff.horner@vanderbilt.edu>
> > - Dirk Eddelbuettel <edd@debian.org>
> >
> > ______________________________________________
> > R-help@stat.math.ethz.ch mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> > and provide commented, minimal, self-contained, reproducible code.
>

> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Wed Sep 27 12:20:50 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Wed 27 Sep 2006 - 03:30:07 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.