# leite ab jetzt alle Ausgaben in die Datei "Ausgabe.txt" um
sink("Ausgabe.txt")
17 Ausgabe in Datei umleiten
Das Umleiten der R
-Ausgabe in eine Textdatei ist evtl. ein etwas angestaubtes Verfahren, welches vor allem in Zeiten vor RStudio
Anwendung gefunden hat. Heutzutage steht mit quarto
eine komfortable Lösung zur Verfügung, hübsche R
-Auswertungen z.B. in einem ansprechenden html
-Dokument (sprich einer Webseite) zu präsentieren (siehe hierzu Kapitel 23).
Standardmäßig schreibt R
seine Ausgaben in das Konsolfenster. Manchmal kann es aber auch vorteilhaft sein, die Ausgaben in eine Datei umzulenken. Dies kann mit der Funktion sink()
erreicht werden. Der folgende Befehl leitet alle Ausgaben in die Textdatei Ausgabe.txt
im Arbeitsverzeichnis um.
Soll die Umleitung aufgehoben werden, erfolgt dies mit einem leeren Funktionsaufruf.
# beende die Umleitung
sink()
So kann man in der Scriptdatei genau festlegen, ab wann die Ausgaben in eine Datei geschrieben werden sollen, und wann nicht. Beachten Sie, dass R
die Textdatei immer wieder überschreiben wird, z.B. wenn der sink()
Aufruf beendet und dann erneut gestartet wird. Um die Ausgabe an eine bestehende Datei anzuhängen (ohne diese zu überschreiben) muss der Parameter append
auf TRUE
gesetzt werden.
# hänge ab jetzt alle Ausgaben an die Datei "Ausgabe.txt" an
sink("Ausgabe.txt", append=TRUE)
An dieser Stelle sei auf die Befehle print()
und cat()
hingewiesen. Wenn Sie die R
-Ausgabe in eine Textdatei umleiten, möchten Sie evtl. ebenfalls Kommentare oder anderen Text in die Textdatei schreiben lassen, z.B. bevor Sie Befehle ausführen (oder nachdem).
Der Befehl print()
gibt den Text dabei in der R
-bekannten Weise aus.
# schreibe mit print() in die Textdatei
print("Guten Tag, beginnen wir mit der Analyse.")
In die Textdatei wird geschrieben:
[1] "Guten Tag, beginnen wir mit der Analyse."
Mit dem Befehl cat()
wird tatsächlich nur der Text ausgegeben (ohne den Positionsanzeiger [1]
).
# schreibe mit cat() in die Textdatei
cat("Guten Tag, beginnen wir mit der Analyse.geht es!")
In die Textdatei wird geschrieben:
Guten Tag, beginnen wir mit der Analyse.
Los geht es!
Der Parameter n
gibt an, dass eine neue Zeile beginnen soll.