[Rd] substitute(INDICES) in by.data.frame returns invalid multi-line name (PR#9108)

pkensche at cmbi.ru.nl pkensche at cmbi.ru.nl
Fri Jul 28 13:53:28 CEST 2006

Full_Name: Philip Kensche
Version: 2.3.0
OS: Redhat Linux
Submission from: (NULL) (

Try this:

x <- data.frame(the.first.column=c("A"), the.second.column=c("b"),
the.third.column=c("d"), and.many.more.columns=c("e"))

by(x, paste(x$the.first.column, x$the.second.column, x$and.many.more.columns,
sep="."), function (y) { print("Hello!") })

The following error message is produced on my system:

Error in "names<-.default"(`*tmp*`, value = c("paste(x$the.first.column,
x$the.second.column, x$and.many.more.columns, ",  :
        'names' attribute [2] must be the same length as the vector [1]

Calling substitute(INDICES) after debug(by.data.frame) returns:
paste(x$the.first.column, x$the.second.column, x$and.many.more.columns,
    sep = ".")
i.e. the sep = ... is on the next line.



More information about the R-devel mailing list