Try this:
do.call(sprintf, c("%9.2f\t%d\t%d\t%8.3f", as.list(v[iv])))
On 5/3/06, Paul Roebuck <[EMAIL PROTECTED]> wrote:
> How would one go about getting sprintf to use the
> values of a vector without having to specify each
> argument individually?
>
> > v <- c(1, 2, -1.197114, 0.1596687)
> > iv <- c(3, 1, 2, 4)
> > sprintf("%9.2f\t%d\t%d\t%8.3f", v[3], v[1], v[2], v[4])
> [1] " -1.20\t1\t2\t 0.160"
>
> Essentially, desired effect would be something like:
> > sprintf("%9.2f\t%d\t%d\t%8.3f", v[iv]) # wish it worked
>
> ----------------------------------------------------------
> SIGSIG -- signature too long (core dumped)
>
> ______________________________________________
> [email protected] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html