Gegevens exporteren van R naar CSV, Excel

Gegevens exporteren uit R

In deze zelfstudie leren we hoe u gegevens uit de R-omgeving naar verschillende formaten kunt exporteren.

Om gegevens naar de harde schijf te exporteren, hebt u het bestandspad en een extensie nodig. Allereerst is het pad de locatie waar de gegevens worden opgeslagen. In deze tutorial ziet u hoe u gegevens opslaat op:

  • De harde schijf
  • Google Drive
  • Dropbox

Ten tweede stelt R de gebruikers in staat de gegevens naar verschillende soorten bestanden te exporteren. We behandelen de essentiële bestandsextensie:

  • csv
  • xlsx
  • RDS
  • SAS
  • SPSS
  • STAAT

Over het algemeen is het niet moeilijk om gegevens uit R.

Exporteren naar harde schijf

Om te beginnen kunt u de gegevens direct in de werkdirectory opslaan. De volgende code print het pad van uw werkdirectory:

directory <-getwd()
directory

Output:

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

Standaard wordt het bestand opgeslagen in het onderstaande pad.

Voor Mac OS:

/Users/USERNAME/Downloads/

Voor Windows:

C:\Users\USERNAME\Documents\

Je kunt uiteraard een ander pad uitstippelen. U kunt bijvoorbeeld het pad naar de downloadmap wijzigen.

Maak een dataframe

Laten we eerst de mtcars-dataset importeren en het gemiddelde van mpg en disp opvragen, gegroepeerd op uitrusting.

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

Output:

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

De tabel bevat drie rijen en drie kolommen. U kunt een CSV-bestand maken met de functie write.csv in R.

Een DataFrame exporteren naar een CSV-bestand in R

De basissyntaxis van write.csv in R om het dataframe naar CSV in R te exporteren:

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

Voorbeeld:

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

Code Uitleg

  • write.csv(df, “table_car.csv”): Maak een CSV-bestand op de harde schijf:
    • df: naam van het dataframe in de omgeving
    • “table_car.csv”: Geef het bestand een naam table_car en sla het op als csv

Note: U kunt de functie write.csv in R gebruiken als write.csv2() om de rijen te scheiden met een puntkomma voor R-export naar csv-gegevens.

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

Note: Alleen voor pedagogische doeleinden hebben we een functie gemaakt met de naam open_folder() om de directorymap voor u te openen. U hoeft alleen maar de onderstaande code uit te voeren en te zien waar het csv-bestand is opgeslagen. U zou een bestandsnaam table_car.csv moeten zien voor data R-export naar csv.

# 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)

Hoe u gegevens van R naar Excel-bestand exporteert

Nu zullen we leren hoe u gegevens van R naar Excel kunt exporteren:

Gegevens exporteren van R naar Excel is triviaal Windows gebruikers en lastiger voor Mac OS-gebruikers. Beide gebruikers zullen de bibliotheek xlsx gebruiken om een ​​Excel-bestand te maken. Het kleine verschil komt door de installatie van de bibliotheek. De bibliotheek xlsx maakt inderdaad gebruik van Java om het bestand te maken. Java moet worden geïnstalleerd als dit niet aanwezig is op uw machine voor Data R-export naar Excel.

Windows gebruikers

Als u een Windows gebruiker, kunt u de bibliotheek rechtstreeks met conda installeren om dataframe naar Excel R te exporteren:

conda install -c r r-xlsx

Zodra de bibliotheek is geïnstalleerd, kunt u de functie write.xlsx() gebruiken. Er wordt een nieuwe Excel-werkmap gemaakt in de werkmap voor R-export naar Excel-gegevens

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

Als u een Mac OS-gebruiker bent, moet u deze stappen volgen:

  • Stap 1: Installeer de nieuwste versie van Java
  • Stap 2: Installeer bibliotheek rJava
  • Stap 3: Installeer bibliotheek xlsx

Stap 1) Je zou kunnen downloaden Java van officieel Oracle website en installeer deze.

U kunt teruggaan naar Rstudio en controleren welke versie van Java geïnstalleerd.

system("java -version")

Op het moment van de tutorial was de nieuwste versie van Java is 9.0.4.

Stap 2) U moet rjava in R installeren. Wij raden u aan om R en Rstudio met Anaconda te installeren. Anaconda beheert de afhankelijkheden tussen bibliotheken. In die zin zal Anaconda de complexiteit van r afhandelenJava installatie.

Allereerst moet u Conda bijwerken en vervolgens het bibliotheek. U kunt de volgende twee regels code kopiëren en in de terminal plakken.

conda - conda update
conda install -c r r-rjava

Open vervolgens rjava in Rstudio

library(rJava)

Stap 3) Eindelijk is het tijd om xlsx te installeren. Nogmaals, u kunt gebruiken Conda om het te doen:

conda install -c r r-xlsx

Net als Windows-gebruikers kunt u gegevens opslaan met de functie write.xlsx()

library(xlsx)

Output:

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

Gegevens exporteren van R naar verschillende software

Het exporteren van data naar verschillende software is net zo eenvoudig als het importeren ervan. De bibliotheek "haven" biedt een handige manier om data te exporteren naar

  • sps
  • sas
  • geweest

Importeer eerst de bibliotheek. Als je geen "haven" hebt, kun je hier om het te installeren.

library(haven)

SPSS-bestand

Hieronder vindt u de code om de gegevens naar SPSS-software te exporteren:

write_sav(df, "table_car.sav")

Gegevens exporteren van R naar SAS-bestand

Net zo eenvoudig als spss kunt u exporteren naar sas

write_sas(df, "table_car.sas7bdat")

Gegevens exporteren van R naar STATA-bestand

Ten slotte kunt u met de havenbibliotheek .dta-bestanden schrijven.

write_dta(df, "table_car.dta")

R

Als u een dataframe of een ander R-object wilt opslaan, kunt u de functie save() gebruiken.

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

U kunt de hierboven gemaakte bestanden in de huidige werkmap controleren

Gegevens exporteren van R naar STATA-bestand

Communiceer met de cloudservices

Tenslotte, R is uitgerust met fantastische bibliotheken voor interactie met de cloud computing-services. Het laatste deel van deze tutorial gaat over het exporteren/importeren van bestanden van:

  • Google Drive
  • Dropbox

Note: In dit deel van de tutorial wordt ervan uitgegaan dat u een account bij Google heeft Dropbox. Zo niet, dan kunt u er snel een maken voor – Google Drive: https://accounts.google.com/SignUp?hl=en - Dropbox: https://www.dropbox.com/h

Google Drive

U moet de bibliotheek Google Drive installeren om toegang te krijgen tot de functie waarmee u kunt communiceren Google Drive.

De bibliotheek is nog niet beschikbaar bij Anaconda. Je kunt het met de onderstaande code in de console installeren.

install.packages("googledrive")

en jij opent de bibliotheek.

library(googledrive)

Voor niet-Conda-gebruikers is het installeren van een bibliotheek eenvoudig. U kunt de functie install.packages('NAAM VAN PAKKET) gebruiken met de naam van het pakket tussen haakjes. Vergeet de '' niet. Merk op dat R verondersteld wordt het pakket automatisch in `libPaths() te installeren. Het is de moeite waard om het in actie te zien.

Uploaden naar Google Drive

Om een ​​bestand naar Google Drive te uploaden, moet u de functie drive_upload() gebruiken.

Elke keer dat u Rstudio opnieuw opstart, wordt u gevraagd toegang tot tickverse toe te staan Google Drive.

De basissyntaxis van drive_upload() is

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.

Nadat u de code heeft gestart, moet u verschillende vragen bevestigen

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

Output:

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

U typt 1 in de console om de toegang te bevestigen

Google Drive

Vervolgens wordt u doorgestuurd naar de Google API om toegang te verlenen. Klik op Toestaan.

Google Drive

Zodra de authenticatie is voltooid, kunt u uw browser afsluiten.

Google Drive

In de console van Rstudio kunt u de samenvatting van de uitgevoerde stap zien. Google heeft het bestand dat zich lokaal op de Drive bevindt, succesvol geüpload. Google heeft aan elk bestand op de schijf een ID toegewezen.

Google Drive

U kunt dit bestand bekijken in Google Spreadsheet.

drive_browse("table_car")

Output:

U wordt doorgestuurd naar Google Spreadsheet

Google Drive

Importeren van Google Drive

Upload een bestand van Google Drive met de ID is handig. Als u de bestandsnaam kent, kunt u de ID als volgt opvragen:

Note: Afhankelijk van uw internetverbinding en de grootte van uw schijf duurt dit even.

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

Google Drive

Je hebt de ID opgeslagen in de variabele x. Met de functie drive_download() kunt u een bestand downloaden van Google Drive.

De basissyntaxis is:

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.

Je kunt het bestand eindelijk downloaden:

download_google & lt; - drive_download(as_id(x), overwrite = TRUE)

Code Uitleg

  • drive_download(): Functie om een ​​bestand van te downloaden Google Drive
  • as_id(x): Gebruik de ID om door het bestand te bladeren Google Drive
  • overschrijven = TRUE: Als het bestand bestaat, overschrijf het, anders wordt de uitvoering stopgezet. Om de naam van het bestand lokaal te zien, kunt u het volgende gebruiken:

Output:

Google Drive

Het bestand wordt opgeslagen in uw werkmap. Houd er rekening mee dat u de extensie van het bestand moet toevoegen om het in R te kunnen openen. U kunt de volledige naam maken met de functie paste() (dat wil zeggen 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

Output:

##   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

Ten slotte kunt u het bestand van uw Google Drive verwijderen.

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

Output:

Google Drive

Het is een langzaam proces. Het kost tijd om te verwijderen

Exporteren naar Dropbox

R interageert met Dropbox via de rdrop2-bibliotheek. De bibliotheek is ook niet beschikbaar bij Anaconda. Je kunt het via de console installeren

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

U moet tijdelijke toegang verlenen tot Dropbox met uw legitimatie. Nadat de identificatie is voltooid, kan R uploads en downloads naar uw Dropbox.

Allereerst moet u toegang geven tot uw account. De inloggegevens worden tijdens de hele sessie in de cache opgeslagen.

drop_auth()

U wordt doorgestuurd naar Dropbox om de authenticatie te bevestigen.

Exporteren naar Dropbox

U krijgt een bevestigingspagina. Je kunt het sluiten en terugkeren naar R

Exporteren naar Dropbox

Je kunt een map aanmaken met de functie drop_create().

  • drop_create('my_first_drop'): Creëer een map in de eerste tak van Dropbox
  • drop_create('First_branch/my_first_drop'): Maak een map aan in de bestaande First_branch map.
drop_create('my_first_drop')

Output:

Exporteren naar Dropbox

In druppelBox

Exporteren naar Dropbox

Om het .csv-bestand naar uw Dropbox, gebruik dan de functie drop_upload().

Basissyntaxis:

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")

Output:

Exporteren naar Dropbox

Bij DropBox

Exporteren naar Dropbox

U kunt het csv-bestand lezen van Dropbox met de functie drop_read_csv()

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

Output:

##   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

Wanneer u klaar bent met het gebruik van het bestand en het wilt verwijderen. U moet het pad van het bestand in de functie drop_delete() schrijven

drop_delete('my_first_drop/table_car.csv')

Output:

Exporteren naar Dropbox

Het is ook mogelijk om een ​​map te verwijderen

drop_delete('my_first_drop')

Output:

Exporteren naar Dropbox

Samenvatting

We kunnen alle functies samenvatten in de onderstaande tabel

Bibliotheek Objectief Functie
baseren Exporteer csv schrijf.csv()
xlsx Excel-exporteren schrijf.xlsx()
veilige haven Export spss schrijf_sav()
veilige haven Exporteer sas schrijf_sas()
veilige haven Statistieken exporteren schrijf_dta()
baseren Exporteer R sparen()
Google Drive Uploaden Google Drive drive_upload()
Google Drive Open in Google Drive drive_browse()
Google Drive Bestands-ID ophalen drive_get(as_id())
Google Drive Downloaden van Google Drive download_google()
Google Drive Bestand verwijderen uit Google Drive schijf_rm()
rdrop2 authenticatie drop_auth()
rdrop2 Maak een map drop_create()
rdrop2 Uploaden naar Dropbox drop_upload()
rdrop2 Lees csv van Dropbox drop_read_csv
rdrop2 Bestand verwijderen van Dropbox drop_delete()