Roy*_*lTS 1 r non-standard-evaluation
我有一份引用清单
quote(list(orders = .N,
total_quantity = sum(quantity)))
Run Code Online (Sandbox Code Playgroud)
(我最终eval在ja的一部分data.table)
我想要的是提取names该列表的 ,而不必评估表达式,因为在正确的环境之外评估表达式会产生错误。
此时该列表还没有任何名称。它甚至不是一个列表。这是对函数的调用list()。但这就是说您可以解析该函数调用并提取名称参数。例如
x <- quote(list(orders = .N,
total_quantity = sum(quantity)))
names(as.list(x))[-1]
# [1] "orders" "total_quantity"
Run Code Online (Sandbox Code Playgroud)
表达式上的as.list()操作将函数调用转换为一个(命名)列表,而不进行求值。
| 归档时间: |
|
| 查看次数: |
47 次 |
| 最近记录: |