我想glue
在 a 中使用 a glue
。这里我创建了一个简单的可重现示例:
library(glue)
l <- c("a", "b", "c")
input = list(a = "test1",
b = "test2",
c = "test3")
for (i in l) {
print(glue("{input${i}}"))
}
#> Error:
#> ! Failed to parse glue component
#> Caused by error in `parse()`:
#> ! <text>:1:7: unexpected '{'
#> 1: input${
#> ^
创建于 2024-08-05,使用reprex v2.1.0
这会返回错误,因为我们想在花括号内使用花括号。我预期的输出应如下所示:
test1
test2
test3
因为我希望胶水看起来使用向量中的字母l
来打印列表中提到的值input
。这基本上是input$a
返回test1
。
所以我想知道是否可以在 R 中使用胶水中的胶水?
您确实可以选择嵌套调用以进行粘合。
这是从数据框(或本例中的列表)中选择列的经典 R 方式。使用 $ 和字符值动态选择数据框列
input[l]
会给你l
的元素input
。或者在
for
循环中使用[[]]
来选择单个元素。