Skip to content
Prev 58560 / 63421 Next

paste(character(0), collapse="", recycle0=FALSE) should be ""

I think that collapse=<string> should make paste() return a single string,
regardless of the value of recycle0.  E.g., I would like to see
[1] "X1, X2, X3"
[1] ""

Currently the latter gives character(0).

paste's collapse argument has traditionally acted after all the other
arguments were dealt with, as in the following not extensively tested
function.

altPaste <- function (..., collapse = NULL) {
    tmp <- paste(...)
    if (!is.null(collapse)) {
        paste(tmp, collapse=collapse)
    } else {
        tmp
    }
}

E.g., in post-R-4.0.0 R-devel
[1] "X1, X2, X3"
[1] "X"
[1] ""

I think it would be good if the above function continued to act the same as
paste itself.

Bill Dunlap
TIBCO Software
wdunlap tibco.com


On Thu, May 21, 2020 at 9:42 AM Martin Maechler <maechler at stat.math.ethz.ch>
wrote:

  
  

Thread (26 messages)

suh@rto_@@ggo@o m@iii@g oii y@hoo@com paste(character(0), collapse="", recycle0=FALSE) should be "" Apr 30 Martin Maechler paste(character(0), collapse="", recycle0=FALSE) should be "" May 2 suh@rto_@@ggo@o m@iii@g oii y@hoo@com paste(character(0), collapse="", recycle0=FALSE) should be "" May 3 William Dunlap paste(character(0), collapse="", recycle0=FALSE) should be "" May 15 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 15 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 15 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 15 Martin Maechler paste(character(0), collapse="", recycle0=FALSE) should be "" May 21 William Dunlap paste(character(0), collapse="", recycle0=FALSE) should be "" May 21 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 William Dunlap paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 brodie gaslam paste(character(0), collapse="", recycle0=FALSE) should be "" May 22 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 23 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 23 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 23 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 23 Gabriel Becker paste(character(0), collapse="", recycle0=FALSE) should be "" May 24 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 24 Martin Maechler paste(character(0), collapse="", recycle0=FALSE) should be "" May 26 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 26 Martin Maechler paste(character(0), collapse="", recycle0=FALSE) should be "" May 27 Martin Maechler paste(character(0), collapse="", recycle0=FALSE) should be "" May 28 Hervé Pagès paste(character(0), collapse="", recycle0=FALSE) should be "" May 28