在quo()中使用字符串并在rlang包中获取字符串本身内的表达式

时间:2018-04-30 15:42:52

标签: r string tidyverse evaluation

使用rlang,我想在输入quo(“just_an_example”)时获得quo(just_an_example)的结果。 这意味着我想获得

s = "string is an immutable object"
def letter_count(s):
    d = {}
    for i in s:
        d[i] = d.get(i,0)+1
    return d

但是当quo()中的表达式是字符串“just_an_example”时。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

但我不确定解决方案,因为我无法完全理解这个问题,但即使您在rlang::quo函数中输入带引号的字符串,您似乎仍希望获得相同的结果。我使用 rlang_0.2.0.9001 版本。

你可以试试这个:

 library(rlang)

quo(!!as.symbol("just_an_example"))

quo(!!sym("just_an_example"))

<强>输出

> quo(!!sym("just_an_example"))
<quosure>
  expr: ^just_an_example
  env:  global