Wie exportiert man Daten aus R nach CSV und Excel?

โšก Intelligente Zusammenfassung

Der Datenexport aus R umfasst das Schreiben eines Dataframes in die Formate CSV, Excel, SPSS, SAS, STATA und das native R-Format sowie das anschlieรŸende รœbertragen derselben Datei an [Zielorganisation/Land einfรผgen]. Google Drive or DropboxJeder Export folgt einem Muster: einer Funktion, einem Datenrahmen und einem Zielpfad.

  • ๐Ÿ“ Destination First: getwd() gibt das Arbeitsverzeichnis aus, und jeder relative Dateiname wird dort geschrieben, sofern kein vollstรคndiger Pfad angegeben wird.
  • ๐Ÿ“„ CSV-Export: write.csv(df, โ€œfile.csvโ€) ist die universelle Option, und write.csv2() schaltet auf Semikolon-Trennzeichen um.
  • ๐Ÿ“— Excel-Export: Die Funktion write.xlsx() aus dem xlsx-Paket benรถtigt eine funktionierende Anwendung. Java Installation an der Maschine.
  • ๐Ÿ”„ Statistiksoftware: Das haven-Paket schreibt SPSS-, SAS- und STATA-Dateien mit write_sav(), write_sas() und write_dta().
  • ๐Ÿ’พ Native Formate: saveRDS() speichert ein einzelnes Objekt und save() speichert mehrere, wobei in beiden Fรคllen Faktorstufen und Attribute exakt erhalten bleiben.
  • โ˜๏ธ Cloud-Upload: Google Drive und Rdrop2 authentifizieren sich einmal pro Sitzung und ermรถglichen dann das Hoch-, Herunterladen und Lรถschen von Dateien direkt aus R heraus.

Daten aus R exportieren (CSV, Excel)

So exportieren Sie Daten aus R

In diesem Tutorial erfahren Sie, wie Sie Daten aus der R-Umgebung in verschiedene Formate exportieren.

Um Daten auf die Festplatte zu exportieren, benรถtigen Sie den Dateipfad und eine Erweiterung. Zunรคchst einmal ist der Pfad der Ort, an dem die Daten gespeichert werden. In diesem Tutorial erfahren Sie, wie Sie Daten speichern auf:

  • Die Festplatte
  • Google Drive
  • Dropbox

Zweitens kann R die Daten in vielen Formaten ausgeben. Dieses Tutorial behandelt die wichtigsten Dateierweiterungen:

  • csv
  • XLSX
  • RDS
  • SAS
  • SPSS
  • STATE

Jeder Export folgt dem gleichen Aufbau: ein Funktionsaufruf, ein Datenrahmen und ein Zielpfad.

Auf Festplatte exportieren

Zunรคchst kรถnnen Sie die Daten direkt im Arbeitsverzeichnis speichern. Der folgende Code gibt den Pfad Ihres Arbeitsverzeichnisses aus:

directory <- getwd()
directory

Ausgang:

## [1] "/Users/15_Export_to_do"

Sofern Sie keinen vollstรคndigen Pfad angeben, wird jede Datei in dieses Arbeitsverzeichnis geschrieben. Der Standardpfad variiert je nach System; รผblicherweise ist dies das Benutzerverzeichnis. macOS und Linux und der Ordner โ€žDokumenteโ€œ auf Windowsgetwd() gibt jedoch immer den aktuellen Wert zurรผck. ร„ndern Sie ihn mit setwd() oder รผbergeben Sie einfach den vollstรคndigen Pfad an die Schreibfunktion.

setwd("/Users/USERNAME/Downloads")

Datenrahmen erstellen

Zuerst wird ein kleiner Datenrahmen erstellt: der Mittelwert von mpg und disp, gruppiert nach Gang aus dem mtcars-Datensatz.

library(dplyr)
df <-mtcars %>%
    select(mpg, disp, gear) %>%
    group_by(gear) %>%
    summarize(mean_mpg = mean(mpg), mean_disp = mean(disp))
df

Ausgang:

## # A tibble: 3 x 3
##	gear mean_mpg mean_disp
##	<dbl>	<dbl>	<dbl>
## 1	3 16.10667  326.3000
## 2 	4 24.53333  123.0167
## 3	5 21.38000  202.4800

Die Tabelle enthรคlt drei Zeilen und drei Spalten. Sie kรถnnen eine CSV-Datei mit der Funktion write.csv in R erstellen.

So exportieren Sie einen DataFrame in eine CSV-Datei in R

Die grundlegende Syntax von write.csv in R zum Exportieren des DataFrame nach CSV in R:

write.csv(df, path)
arguments
-df: Dataset to save. Need to be the same name of the data frame in the environment.
-path: A string. Set the destination path. Path + filename + extension i.e. "/Users/USERNAME/Downloads/mydata.csv" or the filename + extension if the folder is the same as the working directory

Ejemplo:

write.csv(df, "table_car.csv")

Code Erlรคuterung

  • write.csv(df, โ€žtable_car.csvโ€œ): Erstellen Sie eine CSV-Datei auf der Festplatte:
    • df: Name des Datenrahmens in der Umgebung
    • โ€žtable_car.csvโ€œ: Benennen Sie die Datei table_car und speichern Sie sie als csv

Hinweis: write.csv2() schreibt die gleiche Datei, wobei ein Semikolon als Feldtrennzeichen und ein Komma als Dezimaltrennzeichen verwendet wird, was in weiten Teilen Kontinentaleuropas รผblich ist.

write.csv2(df, "table_car.csv")

HinweisAus didaktischen Grรผnden haben wir die Funktion `open_folder()` erstellt, um das Verzeichnis fรผr Sie zu รถffnen. Fรผhren Sie einfach den unten stehenden Code aus und prรผfen Sie, wo die CSV-Datei gespeichert ist. Sie sollten eine Datei namens `table_car.csv` sehen.

# Run this code to create the function
open_folder <-function(dir){
	if (.Platform['OS.type'] == "windows"){
	shell.exec(dir)  
	} else {
	system(paste(Sys.getenv("R_BROWSER"), dir))
  }
}
# Call the function to open the folder
open_folder(directory)

Wie exportiert man einen DataFrame in R in eine Excel-Datei?

Der Export nach Excel ist unkompliziert. Windows und etwas schwieriger am macOSBeide verwenden die xlsx-Bibliothek, der Unterschied liegt lediglich in der Installation, da xlsx von dieser Bibliothek abhรคngt. Java. Java muss auf dem Rechner vorhanden sein, bevor das Paket geladen werden kann.

Windows Nutzer

On WindowsInstallieren Sie die Bibliothek direkt mit conda:

conda install -c r r-xlsx

Sobald die Bibliothek installiert ist, erstellt write.xlsx() eine neue Excel-Arbeitsmappe im Arbeitsverzeichnis:

library(xlsx)
write.xlsx(df, "table_car.xlsx")

Wenn Sie ein Mac OS-Benutzer sind, mรผssen Sie die folgenden Schritte ausfรผhren:

  • Schritt 1: Installieren Sie die neueste Version von Java
  • Schritt 2: Installieren Sie die Bibliothek rJava
  • Schritt 3: Installieren Sie die Bibliothek xlsx

Schritt 1) Sie kรถnnen herunterladen Java von offiziell Oracle Website und installieren Sie es.

Sie kรถnnen zu Rstudio zurรผckkehren und prรผfen, welche Version von Java installiert ist.

system("java -version")

Irgendwelche aktuellen Java Die Freigabe funktioniert. Wenn der Befehl keine Ausgabe liefert, Java ist nicht installiert und das xlsx-Paket kann nicht geladen werden.

Schritt 2) Sie mรผssen rjava in R installieren. Wir empfehlen Ihnen, R und Rstudio mit Anaconda zu installieren. Anaconda verwaltet die Abhรคngigkeiten zwischen Bibliotheken. In diesem Sinne wird Anaconda die Feinheiten von r handhabenJava Installation.

Zunรคchst mรผssen Sie Conda aktualisieren und dann installieren . Sie kรถnnen die nรคchsten beiden Codezeilen kopieren und im Terminal einfรผgen.

conda update conda
conda install -c r r-rjava

Als nรคchstes รถffnen Sie rjava in Rstudio

library(rJava)

Schritt 3) SchlieรŸlich ist es Zeit, xlsx zu installieren. Auch hier kรถnnen Sie es verwenden conda es zu tun:

conda install -c r r-xlsx

Wie die Windows-Benutzer kรถnnen Sie Daten mit der Funktion write.xlsx() speichern

library(xlsx)

Ausgang:

## Loading required package: xlsxjars
write.xlsx(df, "table_car.xlsx")

Exportieren von Daten aus R in eine andere Software

Der Export von Daten in andere Software ist so einfach wie der Import. Die Bibliothek โ€žhavenโ€œ bietet eine bequeme Mรถglichkeit, Daten zu exportieren in

  • spss
  • sas
  • war

Importieren Sie zunรคchst die Bibliothek. Wenn Sie โ€žhavenโ€œ nicht haben, kรถnnen Sie werden auf dieser Seite erlรคutert um es zu installieren.

library(haven)

SPSS-Datei

Nachfolgend finden Sie den Code zum Exportieren der Daten in die SPSS-Software:

write_sav(df, "table_car.sav")

SAS-Datei

Genauso einfach wie spss kรถnnen Sie nach sas exportieren

write_sas(df, "table_car.sas7bdat")

STATA-Datei

SchlieรŸlich ermรถglicht die Port-Bibliothek das Schreiben von .dta-Dateien.

write_dta(df, "table_car.dta")

Wie exportiert man Daten in native R-Formate?

Wenn Sie das Objekt in R behalten und nicht an ein anderes Programm รผbergeben mรถchten, verwenden Sie eines der beiden nativen Formate. save() schreibt ein oder mehrere benannte Objekte in eine .RData-Datei:

save(df, file ='table_car.RData')

Die Alternative ist saveRDS(), das genau ein Objekt speichert und dem Leser ermรถglicht, dessen Namen beim erneuten Aufruf auszuwรคhlen:

# One object, name chosen at read time
saveRDS(df, file = "table_car.rds")
my_data <- readRDS("table_car.rds")

# Several objects, original names restored
save(df, directory, file = "workspace.RData")
load("workspace.RData")
Eigenschaften saveRDS() / readRDS() save() / load()
Objekte pro Datei Genau eins Ein oder mehrere
Objektname beim Neuladen Du entscheidest es Wiederhergestellt wie gespeichert
รœberschreibt die Umgebung Nein Ja, stillschweigend.
รœbliche Erweiterung .rds .RData

Verwenden Sie in Skripten vorzugsweise `saveRDS()`, da `load()` ein vorhandenes Objekt mit demselben Namen unbemerkt รผberschreiben kann. Beide Formate erhalten Faktorstufen, Reihenfolge und Attribute, was mit CSV nicht mรถglich ist.

Sie kรถnnen die oben erstellten Dateien im aktuellen Arbeitsverzeichnis รผberprรผfen

Exportieren Sie Daten aus R in eine STATA-Datei

Interagieren Sie mit den Cloud-Diensten

Ostatni, ale nie najmniej, R ist mit fantastischen Bibliotheken ausgestattet, um mit den Cloud-Computing-Diensten zu interagieren. Der letzte Teil dieses Tutorials befasst sich mit dem Export/Import von Dateien aus:

  • Google Drive
  • Dropbox

HinweisDieser Teil des Tutorials setzt voraus, dass Sie ein Konto bei Google und Dropbox. Wenn nicht, kรถnnen Sie schnell eines erstellen fรผr โ€“ Google Drive: https://accounts.google.com/SignUp?hl=en - Dropbox: https://www.dropbox.com/h

Google Drive

Sie mรผssen die Bibliothek GoogleDrive installieren, um auf die Funktion zuzugreifen, die die Interaktion mit Google Drive.

Die Bibliothek ist bei Anaconda noch nicht verfรผgbar. Sie kรถnnen es mit dem folgenden Code in der Konsole installieren.

install.packages("googledrive")

und Sie รถffnen die Bibliothek.

library(googledrive)

Fรผr Nutzer, die Conda nicht verwenden, ist die Installation einer Bibliothek einfach: Sie kรถnnen `install.packages('NAME DES PAKETS')` verwenden, wobei der Paketname in Anfรผhrungszeichen innerhalb der Klammern steht. R installiert die Bibliothek dann im ersten Verzeichnis, das von `.libPaths()` zurรผckgegeben wird.

Etwas hochladen auf Google Drive

Um eine Datei hochzuladen Google Um auf dem Laufwerk zu fahren, mรผssen Sie die Funktion drive_upload() verwenden.

Bei jedem Neustart von Rstudio werden Sie aufgefordert, den Zugriff auf Tidyverse zuzulassen Google Drive.

Die grundlegende Syntax von drive_upload() lautet

drive_upload(file, path = NULL, name = NULL)
arguments:
- file: Full name of the file to upload (i.e., including the extension)
- path: Location of the file- name: You can rename it as you wish. By default, it is the local name.

Nachdem Sie den Code gestartet haben, mรผssen Sie mehrere Fragen bestรคtigen

drive_upload("table_car.csv", name = "table_car")

Ausgang:

## Local file: 
## * table_car.csv 
## uploaded into Drive file: 
## * table_car: 1hwb57eT-9qSgDHt9CrVt5Ht7RHogQaMk 
## with MIME type: 
## * text/csv

Sie geben 1 in die Konsole ein, um den Zugriff zu bestรคtigen

Google Drive

AnschlieรŸend werden Sie weitergeleitet zu Google Um den Zugriff รผber die API zu ermรถglichen, klicken Sie auf โ€žZulassenโ€œ.

Google Drive

Sobald die Authentifizierung abgeschlossen ist, kรถnnen Sie Ihren Browser schlieรŸen.

Google Drive

In der Konsole von RStudio kรถnnen Sie die Zusammenfassung des durchgefรผhrten Schritts einsehen. Google Die lokal auf dem Drive befindliche Datei wurde erfolgreich hochgeladen. Google Jeder Datei auf dem Laufwerk wurde eine ID zugewiesen.

Google Drive

Sie kรถnnen diese Datei in sehen Google Spreadsheet.

drive_browse("table_car")

Ausgang:

Sie werden weitergeleitet zu Google Spreadsheet

Google Drive

Importieren von Google Drive

Das Herunterladen รผber die Datei-ID ist der zuverlรคssigste Weg. Wenn Sie den Dateinamen kennen, ermitteln Sie zuerst die Datei-ID:

Hinweis: Abhรคngig von Ihrer Internetverbindung und der GrรถรŸe Ihres Laufwerks dauert es einige Zeit.

x <-drive_get("table_car")
as_id(x)

Google Drive

Sie haben die ID in der Variablen x gespeichert. Die Funktion โ€ždrive_download()โ€œ ermรถglicht das Herunterladen einer Datei von Google Drive.

Die grundlegende Syntax lautet:

drive_download(file, path = NULL, overwrite = FALSE)
arguments:
- file:  Name or id of the file to download
-path: Location to download the file. By default, it is downloaded to the working directory and the name as in Google Drive
-overwrite = FALSE: If the file already exists, don't overwrite it. If set to TRUE, the old file is erased and replaced by the new one.

Endlich kรถnnen Sie die Datei herunterladen:

download_google <- drive_download(as_id(x), overwrite = TRUE)

Code Erlรคuterung

  • drive_download(): Funktion zum Herunterladen einer Datei von Google Drive
  • as_id(x): Verwenden Sie die ID, um die Datei zu durchsuchen Google Drive
  • overwrite = TRUE: Wenn die Datei vorhanden ist, รผberschreiben Sie sie, andernfalls wird die Ausfรผhrung angehalten. Um den Namen der Datei lokal anzuzeigen, kรถnnen Sie Folgendes verwenden:

Ausgang:

Google Drive

Die Datei befindet sich in Ihrem Arbeitsverzeichnis. Denken Sie daran, die Dateiendung hinzuzufรผgen, bevor Sie sie in R รถffnen. Sie kรถnnen den vollstรคndigen Namen mit der Funktion paste() erstellen (z. B. table_car.csv).

google_file <-download_google$local_path
google_file
path <-paste(google_file, ".csv", sep = "")
google_table_car <-read.csv(path)
google_table_car

Ausgang:

##   X gear mean_mpg mean_disp
## 1 1    3 16.10667  326.3000
## 2 2    4 24.53333  123.0167
## 3 3    5 21.38000  202.4800

SchlieรŸlich kรถnnen Sie die Datei von Ihrem System entfernen. Google zu fahren.

## remove file
drive_find("table_car") %>%drive_rm()

Ausgang:

Google Drive

Die Lรถschung wird asynchron verarbeitet von GoogleDaher kann es einen Moment dauern, bis die Datei verschwindet.

Exportieren nach Dropbox

R interagiert mit Dropbox รผber die rdrop2-Bibliothek. Die Bibliothek ist auch bei Anaconda nicht verfรผgbar. Sie kรถnnen es รผber die Konsole installieren

install.packages('rdrop2')
library(rdrop2)

Sie gewรคhren vorรผbergehenden Zugriff auf Dropbox mit Ihren Zugangsdaten. Nach der Authentifizierung kann R Dateien in Ihrem Verzeichnis erstellen, lรถschen, hochladen und herunterladen. Dropbox.

Zunรคchst mรผssen Sie Zugriff auf Ihr Konto gewรคhren. Die Anmeldeinformationen werden wรคhrend der gesamten Sitzung zwischengespeichert.

drop_auth()

Sie werden weitergeleitet zu Dropbox um die Authentifizierung zu bestรคtigen.

Exportieren nach Dropbox

Sie erhalten eine Bestรคtigungsseite. Sie kรถnnen es schlieรŸen und zu R zurรผckkehren

Exportieren nach Dropbox

Sie kรถnnen einen Ordner mit der Funktion drop_create() erstellen.

  • drop_create('my_first_drop'): Erstellen Sie einen Ordner im ersten Zweig von Dropbox
  • drop_create('First_branch/my_first_drop'): Erstellen Sie einen Ordner im vorhandenen First_branch-Ordner.
drop_create('my_first_drop')

Ausgang:

Exportieren nach Dropbox

Im DropBox

Exportieren nach Dropbox

Um die CSV-Datei in Ihr hochzuladen Dropbox, verwenden Sie die Funktion drop_upload().

Grundlegende Syntax:

drop_upload(file, path = NULL, mode = "overwrite")
arguments:
- file: local path
- path: Path on Dropbox 
- mode = "overwrite":  By default, overwrite an existing file. If set to `add`, the upload is not completed.
drop_upload('table_car.csv', path = "my_first_drop")

Ausgang:

Exportieren nach Dropbox

Bei DropBox

Exportieren nach Dropbox

Sie kรถnnen die CSV-Datei hier lesen Dropbox mit der Funktion drop_read_csv()

dropbox_table_car <-drop_read_csv("my_first_drop/table_car.csv")
dropbox_table_car

Ausgang:

##   X gear mean_mpg mean_disp
## 1 1    3 16.10667  326.3000
## 2 2    4 24.53333  123.0167
## 3 3    5 21.38000  202.4800

Wenn Sie mit der Verwendung der Datei fertig sind und diese lรถschen mรถchten. Sie mรผssen den Pfad der Datei in die Funktion drop_delete() schreiben

drop_delete('my_first_drop/table_car.csv')

Ausgang:

Exportieren nach Dropbox

Es ist auch mรถglich, einen Ordner zu lรถschen

drop_delete('my_first_drop')

Ausgang:

Exportieren nach Dropbox

Datenexport aus R: Funktionsreferenz

Alle in diesem Tutorial verwendeten Exportfunktionen sind unten aufgefรผhrt:

Bibliothek Ziel Funktion
Base CSV exportieren write.csv()
XLSX Excel exportieren write.xlsx()
Port SPSS exportieren write_sav()
Port SAS exportieren write_sas()
Port Statistiken exportieren write_dta()
Base R-Objekte exportieren save() / saveRDS()
google Drive Hochladen Google Drive drive_upload()
google Drive รถffnen Sie in Google Drive drive_browse()
google Drive Datei-ID abrufen drive_get(as_id())
google Drive Download von Google Drive Laufwerk herunterladen()
google Drive Datei entfernen aus Google Drive drive_rm()
rdrop2 Authentifizierung drop_auth()
rdrop2 Erstellen Sie einen Ordner drop_create()
rdrop2 Etwas hochladen auf Dropbox drop_upload()
rdrop2 CSV lesen von Dropbox drop_read_csv()
rdrop2 Datei lรถschen von Dropbox drop_delete()

Hรคufig gestellte Fragen

`saveRDS()` speichert ein einzelnes Objekt, und mit `readRDS()` kรถnnen Sie ihm einen beliebigen Namen zuweisen. `save()` speichert mehrere Objekte, und `load()` stellt deren ursprรผngliche Namen wieder her, wodurch bereits vorhandene Variablen in Ihrer Umgebung unbemerkt รผberschrieben werden kรถnnen.

StandardmรครŸig schreibt `write.csv()` Zeilennamen als unbenannte erste Spalte. รœbergeben Sie `row.names = FALSE`, um dies zu unterdrรผcken; andernfalls wird beim erneuten Import der Datei eine zusรคtzliche Spalte mit dem Namen โ€žXโ€œ erzeugt.

Verwenden Sie writexl::write_xlsx() oder openxlsx::write.xlsx(). Beide schreiben .xlsx-Dateien in reinem R ohne Java Abhรคngigkeit, die die r vermeidetJava Die vom XLSX-Paket benรถtigte Konfiguration.

Verwenden Sie RDS oder Parquet anstelle von CSV. Beide Formate erhalten Spaltentypen und Faktorstufen, sodass ein Trainingsdatensatz identisch neu geladen wird. CSV konvertiert Datentypen im Hintergrund und ist eine hรคufige Ursache fรผr nicht reproduzierbare Modellergebnisse.

Ja. KI-Assistenten kรถnnen Berechtigungsfehler, falsche Arbeitsverzeichnisse und fehlende Eintrรคge diagnostizieren. Java Fรผr das XLSX-Paket. รœberprรผfen Sie das Ziel immer mit getwd(), bevor Sie einem vorgeschlagenen Pfad vertrauen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: