在表达式函数中计算值

Evaluate values within expression function

使用R语言,如果我想在表达式中插入一些真实的(求值的)值并保持其他参数未解析,我该怎么办?例如:

> b = 1
> a = 2
> expr = expression(b+a)
> expr
expression(b+a)
> eval(expr)
[1] 3

但是如果我想要 expr 等于

怎么办
expression(1+a)

如何预处理变量 b

非常感谢!

那你就不需要求值了,因为你需要的是一个表达式。你需要 substitute:

a <- 2
b <- 1
substitute(expression(b + a),list(b=1))
expression(1 + a)