从字符串赋值给变量

Posted

技术标签:

【中文标题】从字符串赋值给变量【英文标题】:Assign into variable from string 【发布时间】:2021-10-29 04:43:29 【问题描述】:

我想从一个字符串动态创建一个变量名,然后分配一个值。我相信我应该可以使用rlang 轻松完成此操作,但无法从包文档、Advanced R 和搜索中解决。下面是我正在寻找的伪代表。感谢您的指导!

我想要的输出:answer <- 42

我的输入:x <- "answer"(除了“答案”是生成的并且没有在脚本中硬编码)

尝试:rlang::sym(x) <- 42

【问题讨论】:

assign(x, 42)?如果你需要这个,你的整个方法都是不好的做法,应该改变。 我认为这是相关的重复***.com/questions/6034655/… 【参考方案1】:

answer <- 42 是你想要的输出,还是你想要的效果

如果它是所需的输出,则将 answer 符号注入到带有 expr() 的分解表达式中

expr(!!sym(x) <- 42)
#> answer <- 42

answer
#> Error: object 'answer' not found

如果您需要评估此表达式,请使用inject()

inject(!!sym(x) <- 42)

answer
#> [1] 42

【讨论】:

以上是关于从字符串赋值给变量的主要内容,如果未能解决你的问题,请参考以下文章

php的关于字符串类型的变量的赋值问题,谢谢

excel导入spss后给变量赋值

用python编写程序,将从键盘中录入的字符串赋值给x变量,然后将x所包含的数字字符删除

delphi 整型赋值为字节,

如何将一个字符串常量赋值给一个STRING变量?

oracle 将查询结果赋值给变量