R 将表达式列表传递到过滤器/选择中

R 将表达式列表传递到过滤器/选择中,r,tidyeval,R,Tidyeval,我对编写一个函数感兴趣,该函数返回一个数据帧,其行和列上都有一个默认子集 我可以使用以下代码: 图书馆长廊 图书馆弹琴 > >正在附加包:“dplyr” >以下对象已从“package:stats”屏蔽: > >滤波器,滞后 >以下对象已从“package:base”屏蔽: > >相交、setdiff、setequal、并集 默认值% 选择挑选 } 我的过滤器选择 >mpg cyl vs > 1 21.0 6 0 > 2 21.0 6 0 > 3 21.4 6 1 由v0

我对编写一个函数感兴趣,该函数返回一个数据帧,其行和列上都有一个默认子集

我可以使用以下代码:

图书馆长廊 图书馆弹琴 > >正在附加包:“dplyr” >以下对象已从“package:stats”屏蔽: > >滤波器,滞后 >以下对象已从“package:base”屏蔽: > >相交、setdiff、setequal、并集 默认值% 选择挑选 } 我的过滤器选择 >mpg cyl vs > 1 21.0 6 0 > 2 21.0 6 0 > 3 21.4 6 1 由v0.3.0于2020年3月19日创建

但是添加到默认值似乎很麻烦,因为我必须使用默认的过滤器quos

我想知道有没有更简单的方法

我通过传递默认过滤器和选择表达式作为列表尝试了以下操作,这可能是一个更简单的界面,它崩溃了:

图书馆长廊 图书馆弹琴 > >正在附加包:“dplyr” >以下对象已从“package:stats”屏蔽: > >滤波器,滞后 >以下对象已从“package:base”屏蔽: > >相交、setdiff、setequal、并集
默认函数使用QUO而不是默认函数中的列表。有没有关于附加默认值的最佳实践的想法?现在我不得不使用appenddefault_过滤器,quos…,这是有效的,但我不确定这是否是一个好的实践。我不确定默认值是否是最佳实践。但我可以看到它们如何在特定脚本中减少代码重复。但是,如果您喜欢追加,这是一种很好的组合已解除输入列表的方法。在默认函数中使用quos而不是list。您知道追加默认值的最佳实践吗?现在我不得不使用appenddefault_过滤器,quos…,这是有效的,但我不确定这是否是一个好的实践。我不确定默认值是否是最佳实践。但我可以看到它们如何在特定脚本中减少代码重复。但是是的,如果你喜欢append,这是一种很好的组合已撤销输入列表的方法。