Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 将未计算表达式列表折叠为单个表达式_R_Metaprogramming - Fatal编程技术网

R 将未计算表达式列表折叠为单个表达式

R 将未计算表达式列表折叠为单个表达式,r,metaprogramming,R,Metaprogramming,具有以下未赋值表达式列表 l = list(quote(f()),quote(g()),quote(h())) str(l) #List of 3 # $ : language f() # $ : language g() # $ : language h() 我想使用&函数折叠列表,以便得到以下r结果 r = quote(f() & g() & h()) str(r) # language f() & g() & h() 当然,关键是要处理任意长度的列表

具有以下未赋值表达式列表

l = list(quote(f()),quote(g()),quote(h()))
str(l)
#List of 3
# $ : language f()
# $ : language g()
# $ : language h()

我想使用
&
函数折叠列表,以便得到以下
r
结果

r = quote(f() & g() & h())
str(r)
# language f() & g() & h()


当然,关键是要处理任意长度的列表

您可以为此使用
Reduce

Reduce(function(a,b) bquote(.(a) & .(b)), l)

您可以为此使用
Reduce

Reduce(function(a,b) bquote(.(a) & .(b)), l)