[Rd] update.formula and backticked colons
William Dunlap
wdunlap at tibco.com
Fri Jul 31 19:15:27 CEST 2009
> -----Original Message-----
> From: r-devel-bounces at r-project.org
> [mailto:r-devel-bounces at r-project.org] On Behalf Of Sundar Dorai-Raj
> Sent: Thursday, July 30, 2009 2:28 PM
> To: r-devel at stat.math.ethz.ch
> Subject: [Rd] update.formula and backticked colons
>
> I just noticed the following in update.formula and I'm wondering if
> this behavior is the intention of the developers. Here's an example:
>
> update(`a: b` ~ x, ~ . + y)
>
> Note now that the response has no backticks and is interpreted as a:b
> (i.e. ":" is now an operator). This is because in update.formula the
> call to terms.formula uses simplify = TRUE. I'm working with data that
> has a lot of colons in their names and for reporting purposes I don't
> want to use make.names to avoid this situation. I do have a solution
> which simply avoids using update.formula, but I wonder if the
> developers would consider removing the "simplify" argument and allow
> it to be passed through "...", which is currently ignored by
> update.formula. Alternatively, add a simplify=TRUE to the
> update.formula call, which can manually be set to FALSE by the user.
>
> I would love to hear any comments or criticisms of my findings.
>
> Thanks,
>
> --sundar
It would be nice to get right of the deparse/parse cycle in
terms.formula,
since that often causes problems. However, I think that adding
backticks=TRUE
to terms.formula:fixFormulaObject's call to deparse(form[[2L]]) would
fix the
immediate problem. (I haven't spent much time looking for bad side
effects
of this change to terms.formula, which gets called in a lot of other
situations.)
Bill Dunlap
TIBCO Software Inc - Spotfire Division
wdunlap tibco.com
More information about the R-devel
mailing list