Existe uma maneira de imprimir texto e conteúdo variável na mesma linha? Por exemplo,
wd <- getwd()
print("Current working dir: ", wd)
Não consegui encontrar nada sobre a sintaxe que me permitisse fazer isso.
Você pode usar paste
comprint
print(paste0("Current working dir: ", wd))
ou cat
cat("Current working dir: ", wd)
sep = ''
ou terá um espaço extra.cat()
I get aNULL
no final :(print(cat("test", var))
o que deveria sercat("test", var)
Há também
sprintf()
:Para imprimir na saída do console, use
cat()
oumessage()
:fonte
sprintf
não imprime, apenas formata a sequência. Algo como print (sprintf (...)) é necessário dentro dos scripts.Ou usando
message
A resposta do @ agstudy é a mais adequada aqui
fonte
A maneira mais fácil de fazer isso é usar
paste()
paste0()
resultaria no seguinte:Observe que não há separador padrão entre a cadeia ex. Usar um espaço no final da string é uma solução rápida:
Em seguida, combine uma das funções com
print()
Ou
Como outros usuários declararam, você também pode usar
cat()
fonte
O pacote {glue} oferece interpolação de strings. No exemplo,
{wd}
é substituído pelo conteúdo da variável Expressões complexas também são suportadas.Criado em 2019-05-13 pelo pacote reprex (v0.2.1)
Observe como a saída impressa não contém os
[1]
artefatos e as"
aspas, para os quais outras respostas são usadascat()
.fonte
Como outros usuários disseram, cat () é provavelmente a melhor opção.
@krlmlr sugeriu o uso de sprintf () e atualmente é a terceira resposta classificada. sprintf () não é uma boa ideia. Da documentação do R:
Não há uma boa razão para usar sprintf () sobre gato ou outras opções.
fonte
você pode usar o método paste0 ou cat para combinar string com valores variáveis em R
Por exemplo:
fonte