Eu gostaria de usar um glue
dentro de um glue
. Aqui eu criei um exemplo reproduzível simples:
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${
#> ^
Criado em 05/08/2024 com reprex v2.1.0
Isso retorna um erro porque queremos usar uma chave dentro de uma chave. Minha saída esperada deve ser assim:
test1
test2
test3
Porque eu gostaria que a cola ficasse usando as letras do vetor l
para imprimir os valores mencionados na lista input
. Isso é basicamente input$a
retorno test1
.
Então eu queria saber se é possível usar cola dentro de uma cola em R?
você tem a opção de aninhar chamadas na cola.
Esta é a maneira clássica do R de selecionar colunas de um dataframe (ou uma lista, neste caso). Selecione dinamicamente colunas do quadro de dados usando $ e um valor de caractere
input[l]
lhe darial
elementos deinput
.Ou no
for
loop use[[]]
para selecionar elementos individuais.