Re: [Rd] sprintf - was formatC with illegal input crashes Rgui (PR#7686)

From: Prof Brian Ripley <ripley_at_stats.ox.ac.uk>
Date: Mon 14 Feb 2005 - 22:02:20 EST

On Mon, 14 Feb 2005, Wolfgang Huber wrote:

> Dear Prof. Ripley,
>
> Would it be possible to make sprintf accept vector arguments?
> I.e. allow expressions like
> sprintf("%04d", 1:3)
> to produce something like what currently needs to be done via

> sapply(1:3, function(i) sprintf("%04d",i))

I have thought about this, but it is not really clear what the right thing would be here with multiple arguments. What should

sprintf(("%04d %s", 1:3, "abc")

do? Produce a character vector of length 1 or 3? If of length 1, "0001 0002 0003 abc" or "0001 2 0003 abc"?

I guess the most R-like thing would be to recycle args to the length of the longest and then use them in parallel, but that can be done fairly easily by *apply.

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-devel@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Received on Mon Feb 14 21:29:04 2005

This archive was generated by hypermail 2.1.8 : Fri 18 Mar 2005 - 09:02:52 EST