gpt4 book ai didi

r - 将表达式与通用运算符组合

转载 作者:行者123 更新时间:2023-12-01 08:01:09 25 4
gpt4 key购买 nike

假设我有一组表达式

xx <- expression(5, sum(1:10), exp(2))

如何将它们连接到一个表达式中,然后使用公共(public)运算符(在本例中为 + )?我希望结果是(未计算的)表达式

5 + sum(1:10) + exp(2)

理想情况下,有一些像paste这样的函数用于表达式,这样我就可以调用

paste_expr(xx, `+`)

最好避免转换回字符串并执行潜在危险的 paste()

最佳答案

这是使用callReduce的尝试:

Reduce(function(x,y) call("+", x, y), xx)
#5 + sum(1:10) + exp(2)

似乎符合您的要求:

identical(Reduce(function(x,y) call("+", x, y), xx), join_exprs(xx))
#[1] TRUE

关于r - 将表达式与通用运算符组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57516458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com