Gibt es eine Möglichkeit, Text und variablen Inhalt in derselben Zeile zu drucken? Beispielsweise,
wd <- getwd()
print("Current working dir: ", wd)
Ich konnte nichts an der Syntax finden, was mir dies erlauben würde.
Sie können paste
mit verwendenprint
print(paste0("Current working dir: ", wd))
oder cat
cat("Current working dir: ", wd)
sep = ''
oder Sie erhalten einen zusätzlichen Platz.cat()
bekomme ich eineNULL
am Ende :(print(cat("test", var))
was sein solltecat("test", var)
Es gibt auch
sprintf()
:Verwenden Sie zum Drucken auf der Konsolenausgabe
cat()
odermessage()
:quelle
sprintf
nicht gedruckt wird, sondern nur die Zeichenfolge formatiert wird. In Skripten ist so etwas wie print (sprintf (...)) erforderlich.Oder mit
message
Die Antwort von @ agstudy ist hier besser geeignet
quelle
Der einfachste Weg, dies zu tun, ist zu verwenden
paste()
paste0()
würde zu folgendem Ergebnis führen:Beachten Sie, dass zwischen der Zeichenfolge und x kein Standardtrennzeichen steht. Die Verwendung eines Leerzeichens am Ende der Zeichenfolge ist eine schnelle Lösung:
Kombinieren Sie dann eine der beiden Funktionen mit
print()
Oder
Wie andere Benutzer angegeben haben, können Sie auch verwenden
cat()
quelle
Das {glue} -Paket bietet String-Interpolation. Im Beispiel
{wd}
wird durch den Inhalt der Variablen ersetzt. Komplexe Ausdrücke werden ebenfalls unterstützt.Erstellt am 13.05.2019 durch das reprex-Paket (v0.2.1)
Beachten Sie, dass die gedruckte Ausgabe keine
[1]
Artefakte und"
Anführungszeichen enthält, für die andere Antworten verwendet werdencat()
.quelle
Wie andere Benutzer sagten, ist cat () wahrscheinlich die beste Option.
@krlmlr schlug die Verwendung von sprintf () vor und es ist derzeit die drittplatzierte Antwort. sprintf () ist keine gute Idee. Aus der R-Dokumentation:
Es gibt keinen guten Grund, sprintf () anstelle von cat oder anderen Optionen zu verwenden.
quelle
Sie können die Methode paste0 oder cat verwenden, um Zeichenfolgen mit variablen Werten in R zu kombinieren
Beispielsweise:
quelle