我在R中有一个角色,说"\\frac{A}{B}"
。我有A
和B
的值,比如5
和10
。有没有办法可以用A
和B
替换5
和10
?
我尝试了以下内容。
words <- "\\frac{A}{B}"
numbers <- list(A=5, B=10)
output <- do.call("substitute", list(parse(text=words)[[1]], numbers))
但我在\
上收到错误。有没有办法可以做到这一点?我试图用实际变量值创建方程式。
答案 0 :(得分:3)
您可以使用 stringi 函数stri_replace_all_fixed()
stringi::stri_replace_all_fixed(
words, names(numbers), numbers, vectorize_all = FALSE
)
# [1] "\\frac{5}{10}"
答案 1 :(得分:2)
试试这个:
sprintf(gsub('\\{\\w\\}','\\{%d}',words),5,10)