【问题标题】:Creating variables with identifiers from a character vector从字符向量创建带有标识符的变量
【发布时间】:2021-02-15 04:32:24
【问题描述】:

创建变量很容易:

`a b` <- 1
`c d` <- 2

或者:

`<-`("a b", 1)
`<-`("c d", 2)

在这里,我有一个变量名称的向量 x &lt;- c("a b", "c d"),但我正在尝试将 1 分配给 `a b`

`<-`(x[1], 1)

但这会转化为x[1] &lt;- 1,而不是`a b` &lt;- 1

我试过了

`<-`(get(x[1]), 1)

library(rlang)
`<-`(expr(!!x[1]), 1)

但这些都不起作用。有什么想法吗?

【问题讨论】:

  • 不要养成创建无效语法符号的习惯。
  • 您能否说明哪些符号无效?
  • 所有需要引用的符号,例如,包含空格字符的符号。
  • 是的,带空格的符号是非标准的,但我不会说它们是无效的(否则它们不会运行)。我正在使用它来让我的plotly 的工具提示正常工作。

标签: r rlang


【解决方案1】:

使用assign

assign(x[1], 1)
`a b`
#[1] 1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-25
    • 2023-01-08
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 2013-04-14
    相关资源
    最近更新 更多