Πώς να εξάγετε δεδομένα από R σε CSV και Excel
⚡ Έξυπνη Σύνοψη
Η εξαγωγή δεδομένων από την R καλύπτει την εγγραφή ενός πλαισίου δεδομένων σε μορφές CSV, Excel, SPSS, SAS, STATA και εγγενή R και, στη συνέχεια, την προώθηση του ίδιου αρχείου σε Google Drive or DropboxΚάθε εξαγωγή ακολουθεί ένα μοτίβο: μια συνάρτηση, ένα πλαίσιο δεδομένων και μια διαδρομή προορισμού.

Πώς να εξάγετε δεδομένα από το R
Σε αυτό το σεμινάριο, θα μάθουμε πώς να εξάγουμε δεδομένα από το περιβάλλον R σε διαφορετικές μορφές.
Για να εξαγάγετε δεδομένα στον σκληρό δίσκο, χρειάζεστε τη διαδρομή του αρχείου και μια επέκταση. Πρώτα απ 'όλα, η διαδρομή είναι η τοποθεσία όπου θα αποθηκευτούν τα δεδομένα. Σε αυτό το σεμινάριο, θα δείτε πώς να αποθηκεύετε δεδομένα σχετικά με:
- Ο σκληρός δίσκος
- Google Drive
- Dropbox
Δεύτερον, η R μπορεί να γράψει τα δεδομένα σε πολλές μορφές. Αυτό το σεμινάριο καλύπτει τις βασικές επεκτάσεις αρχείων:
- csv
- xlsx
- RDS
- SAS
- SPSS
- ΣΤΑΤΑ
Κάθε εξαγωγή ακολουθεί το ίδιο σχήμα: μία κλήση συνάρτησης, ένα πλαίσιο δεδομένων και μια διαδρομή προορισμού.
Εξαγωγή σε σκληρό δίσκο
Αρχικά, μπορείτε να αποθηκεύσετε τα δεδομένα απευθείας στον κατάλογο εργασίας. Ο παρακάτω κώδικας εκτυπώνει τη διαδρομή του καταλόγου εργασίας σας:
directory <- getwd() directory
Παραγωγή:
## [1] "/Users/15_Export_to_do"
Εκτός αν δώσετε μια πλήρη διαδρομή, κάθε αρχείο εγγράφεται σε αυτόν τον κατάλογο εργασίας. Η προεπιλογή διαφέρει ανάλογα με το σύστημα, συνήθως ο αρχικός φάκελος χρήστη στον macOS και Linux και τον φάκελο Έγγραφα στο Windows, αλλά η getwd() σας λέει πάντα την τρέχουσα τιμή. Αλλάξτε την με setwd() ή απλώς δώστε μια πλήρη διαδρομή στη συνάρτηση εγγραφής.
setwd("/Users/USERNAME/Downloads")
Δημιουργία πλαισίου δεδομένων
Αρχικά, δημιουργήστε ένα μικρό πλαίσιο δεδομένων: τον μέσο όρο των mpg και disp ομαδοποιημένα ανά ταχύτητα από το σύνολο δεδομένων mtcars.
library(dplyr) df <-mtcars %>% select(mpg, disp, gear) %>% group_by(gear) %>% summarize(mean_mpg = mean(mpg), mean_disp = mean(disp)) df
Παραγωγή:
## # 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
Ο πίνακας περιέχει τρεις σειρές και τρεις στήλες. Μπορείτε να δημιουργήσετε ένα αρχείο CSV με τη συνάρτηση write.csv στο R.
Πώς να εξαγάγετε ένα DataFrame σε ένα αρχείο CSV στο R
Η βασική σύνταξη του write.csv στο R για την εξαγωγή του DataFrame σε CSV στο 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
Παράδειγμα:
write.csv(df, "table_car.csv")
Code εξήγηση
- write.csv(df, “table_car.csv”): Δημιουργήστε ένα αρχείο CSV στον σκληρό δίσκο:
- df: όνομα του πλαισίου δεδομένων στο περιβάλλον
- "table_car.csv": Ονομάστε το αρχείο table_car και αποθηκεύστε το ως csv
ΣημείωσηΗ συνάρτηση write.csv2() γράφει το ίδιο αρχείο χρησιμοποιώντας ερωτηματικό ως διαχωριστικό πεδίων και κόμμα ως δεκαδικό σημείο, κάτι που είναι η συνήθης πρακτική σε μεγάλο μέρος της ηπειρωτικής Ευρώπης.
write.csv2(df, "table_car.csv")
ΣημείωσηΜόνο για παιδαγωγικούς σκοπούς, δημιουργήσαμε μια συνάρτηση που ονομάζεται open_folder() για να ανοίξει τον φάκελο καταλόγου για εσάς. Απλώς πρέπει να εκτελέσετε τον παρακάτω κώδικα και να δείτε πού είναι αποθηκευμένο το αρχείο csv. Θα πρέπει να δείτε ένα αρχείο με το όνομα table_car.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)
Πώς να εξάγετε ένα DataFrame σε ένα αρχείο Excel σε R
Η εξαγωγή σε Excel είναι απλή Windows και λίγο πιο περίπλοκο στο macOSΚαι οι δύο χρησιμοποιούν τη βιβλιοθήκη xlsx και η διαφορά είναι μόνο στην εγκατάσταση, επειδή το xlsx εξαρτάται από Java. Java πρέπει να υπάρχει στο μηχάνημα πριν φορτωθεί η συσκευασία.
Windows Χρήστες
On Windows, εγκαταστήστε τη βιβλιοθήκη απευθείας με το conda:
conda install -c r r-xlsx
Μόλις εγκατασταθεί η βιβλιοθήκη, η εντολή write.xlsx() δημιουργεί ένα νέο βιβλίο εργασίας του Excel στον κατάλογο εργασίας:
library(xlsx) write.xlsx(df, "table_car.xlsx")
Εάν είστε χρήστης Mac OS, πρέπει να ακολουθήσετε αυτά τα βήματα:
- Βήμα 1: Εγκαταστήστε την πιο πρόσφατη έκδοση του Java
- Βήμα 2: Εγκαταστήστε τη βιβλιοθήκη rJava
- Βήμα 3: Εγκαταστήστε τη βιβλιοθήκη xlsx
Βήμα 1) Θα μπορούσατε να κάνετε λήψη Java από επίσημο Oracle τοποθεσία και εγκαταστήστε το.
Μπορείτε να επιστρέψετε στο Rstudio και να ελέγξετε ποια έκδοση Java έχει εγκατασταθεί.
system("java -version")
Οποιαδήποτε πρόσφατη Java Η έκδοση λειτουργεί. Εάν η εντολή δεν αναφέρει τίποτα, Java δεν είναι εγκατεστημένο και η φόρτωση του πακέτου xlsx θα αποτύχει.
Βήμα 2) Πρέπει να εγκαταστήσετε το rjava στο R. Σας προτείνουμε να εγκαταστήσετε το R και το Rstudio με το Anaconda. Το Anaconda διαχειρίζεται τις εξαρτήσεις μεταξύ των βιβλιοθηκών. Υπό αυτή την έννοια, ο Anaconda θα χειριστεί τις περιπλοκές του rJava εγκατάσταση.
Πρώτα απ 'όλα, πρέπει να ενημερώσετε το conda και στη συνέχεια να εγκαταστήσετε το βιβλιοθήκη. Μπορείτε να αντιγράψετε και να επικολλήσετε τις επόμενες δύο γραμμές κώδικα στο τερματικό.
conda update conda conda install -c r r-rjava
Στη συνέχεια, ανοίξτε το rjava στο Rstudio
library(rJava)
Βήμα 3) Τέλος, ήρθε η ώρα να εγκαταστήσετε το xlsx. Για άλλη μια φορά, μπορείτε να χρησιμοποιήσετε Conda να το κάνω:
conda install -c r r-xlsx
Όπως και οι χρήστες των Windows, μπορείτε να αποθηκεύσετε δεδομένα με τη συνάρτηση write.xlsx()
library(xlsx)
Παραγωγή:
## Loading required package: xlsxjars
write.xlsx(df, "table_car.xlsx")
Εξαγωγή δεδομένων από το R σε διαφορετικό λογισμικό
Η εξαγωγή δεδομένων σε διαφορετικό λογισμικό είναι τόσο απλή όσο και η εισαγωγή τους. Το "καταφύγιο" της βιβλιοθήκης παρέχει έναν βολικό τρόπο εξαγωγής δεδομένων σε
- spss
- sas
- ήταν
Πρώτα απ 'όλα, εισάγετε τη βιβλιοθήκη. Εάν δεν έχετε «καταφύγιο», μπορείτε να πάτε εδώ για να το εγκαταστήσετε.
library(haven)
Αρχείο SPSS
Ακολουθεί ο κώδικας για την εξαγωγή των δεδομένων σε λογισμικό SPSS:
write_sav(df, "table_car.sav")
Αρχείο SAS
Εξίσου απλό με το spss, μπορείτε να κάνετε εξαγωγή στο sas
write_sas(df, "table_car.sas7bdat")
Αρχείο STATA
Τέλος, η βιβλιοθήκη haven επιτρέπει τη σύνταξη αρχείου .dta.
write_dta(df, "table_car.dta")
Πώς να εξάγετε δεδομένα σε μορφές R Native
Αν θέλετε να διατηρήσετε το αντικείμενο μέσα στην R αντί να το παραδώσετε σε άλλο πρόγραμμα, χρησιμοποιήστε μία από τις δύο εγγενείς μορφές. Η save() γράφει ένα ή περισσότερα αντικείμενα με όνομα σε ένα αρχείο .RData:
save(df, file ='table_car.RData')
Η εναλλακτική λύση είναι η saveRDS(), η οποία αποθηκεύει ακριβώς ένα αντικείμενο και επιτρέπει στον αναγνώστη να επιλέξει το όνομά του κατά την επιστροφή:
# 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")
| Κριτήρια | αποθήκευσηRDS() / ανάγνωσηRDS() | αποθήκευση() / φόρτωση() |
|---|---|---|
| Αντικείμενα ανά αρχείο | Ακριβώς ένα | Ένα ή πολλά |
| Όνομα αντικειμένου κατά την επαναφόρτωση | Εσύ το επιλέγεις | Αποκαταστάθηκε ως αποθηκευμένο |
| Αντικαθιστά το περιβάλλον | Οχι | Ναι, σιωπηλά |
| Συνήθης επέκταση | .rds | .RData |
Προτιμήστε την saveRDS() στα σενάρια, επειδή η load() μπορεί να αντικαταστήσει σιωπηλά ένα υπάρχον αντικείμενο με το ίδιο όνομα. Και οι δύο μορφές διατηρούν τα επίπεδα παραγόντων, τη σειρά και τα χαρακτηριστικά ανέπαφα, κάτι που δεν μπορεί να κάνει το CSV.
Μπορείτε να ελέγξετε τα αρχεία που δημιουργήθηκαν παραπάνω στον παρόντα κατάλογο εργασίας
Αλληλεπίδραση με τις Υπηρεσίες Cloud
Τελευταίο αλλά εξίσου σημαντικό, R είναι εξοπλισμένο με φανταστικές βιβλιοθήκες για αλληλεπίδραση με τις υπηρεσίες υπολογιστικού νέφους. Το τελευταίο μέρος αυτού του σεμιναρίου ασχολείται με την εξαγωγή/εισαγωγή αρχείων από:
- Google Drive
- Dropbox
Σημείωση: Αυτό το μέρος του σεμιναρίου προϋποθέτει ότι έχετε λογαριασμό με Google και Dropbox. Εάν όχι, μπορείτε να δημιουργήσετε γρήγορα ένα για - Google Drive: https://accounts.google.com/SignUp?hl=en - Dropbox: https://www.dropbox.com/h
Google Drive
Πρέπει να εγκαταστήσετε τη βιβλιοθήκη googledrive για να αποκτήσετε πρόσβαση στη λειτουργία που σας επιτρέπει να αλληλεπιδράσετε Google Drive.
Η βιβλιοθήκη δεν είναι ακόμη διαθέσιμη στο Anaconda. Μπορείτε να το εγκαταστήσετε με τον παρακάτω κώδικα στην κονσόλα.
install.packages("googledrive")
και ανοίγεις τη βιβλιοθήκη.
library(googledrive)
Για χρήστες που δεν είναι χρήστες conda, η εγκατάσταση μιας βιβλιοθήκης είναι εύκολη. Μπορείτε να χρησιμοποιήσετε την εντολή install.packages('ΟΝΟΜΑ ΠΑΚΕΤΟΥ') με το όνομα του πακέτου σε εισαγωγικά μέσα στις παρενθέσεις. Η R το εγκαθιστά στην πρώτη θέση που επιστρέφεται από την εντολή .libPaths().
Μεταφορτώστε στο Google Drive
Για να ανεβάσετε ένα αρχείο σε Google μονάδα δίσκου, πρέπει να χρησιμοποιήσετε τη συνάρτηση drive_upload().
Κάθε φορά που κάνετε επανεκκίνηση του Rstudio, θα σας ζητείται να επιτρέψετε την πρόσβαση στο tidyverse Google Drive.
Η βασική σύνταξη της drive_upload() είναι
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.
Αφού εκκινήσετε τον κωδικό, πρέπει να επιβεβαιώσετε πολλές ερωτήσεις
drive_upload("table_car.csv", name = "table_car")
Παραγωγή:
## Local file: ## * table_car.csv ## uploaded into Drive file: ## * table_car: 1hwb57eT-9qSgDHt9CrVt5Ht7RHogQaMk ## with MIME type: ## * text/csv
Πληκτρολογείτε 1 στην κονσόλα για να επιβεβαιώσετε την πρόσβαση
Στη συνέχεια, θα ανακατευθυνθείτε στο Google API για να επιτρέψετε την πρόσβαση. Κάντε κλικ στο κουμπί "Να επιτρέπεται".
Μόλις ολοκληρωθεί ο έλεγχος ταυτότητας, μπορείτε να κλείσετε το πρόγραμμα περιήγησής σας.
Στην κονσόλα του Rstudio, μπορείτε να δείτε τη σύνοψη του βήματος που ολοκληρώσατε. Google Το αρχείο που βρίσκεται τοπικά στη μονάδα δίσκου μεταφορτώθηκε με επιτυχία. Google έχει αντιστοιχιστεί ένα αναγνωριστικό σε κάθε αρχείο στη μονάδα δίσκου.
Μπορείτε να δείτε αυτό το αρχείο στο Google Spreadsheet.
drive_browse("table_car")
Παραγωγή:
Θα γίνει ανακατεύθυνση σε Google Spreadsheet
Εισαγωγή από Google Drive
Η λήψη με βάση το αναγνωριστικό αρχείου είναι η αξιόπιστη οδός. Εάν γνωρίζετε το όνομα του αρχείου, ανακτήστε πρώτα το αναγνωριστικό του:
Σημείωση: Ανάλογα με τη σύνδεσή σας στο Διαδίκτυο και το μέγεθος του Drive σας, χρειάζονται χρόνοι.
x <-drive_get("table_car")
as_id(x)
Αποθηκεύσατε το αναγνωριστικό στη μεταβλητή x. Η συνάρτηση drive_download() επιτρέπει τη λήψη ενός αρχείου από Google Drive.
Η βασική σύνταξη είναι:
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.
Μπορείτε επιτέλους να κατεβάσετε το αρχείο:
download_google <- drive_download(as_id(x), overwrite = TRUE)
Code εξήγηση
- drive_download(): Λειτουργία από την οποία γίνεται λήψη ενός αρχείου Google Drive
- as_id(x): Χρησιμοποιήστε το αναγνωριστικό για να περιηγηθείτε στο αρχείο Google Drive
- overwrite = TRUE: Εάν υπάρχει αρχείο, αντικαταστήστε το, διαφορετικά η εκτέλεση διακόπηκε Για να δείτε το όνομα του αρχείου τοπικά, μπορείτε να χρησιμοποιήσετε:
Παραγωγή:
Το αρχείο αποθηκεύεται στον κατάλογο εργασίας σας. Θυμηθείτε να προσθέσετε την επέκταση αρχείου πριν το ανοίξετε σε R. Μπορείτε να δημιουργήσετε το πλήρες όνομα με τη συνάρτηση paste() (π.χ. 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
Παραγωγή:
## 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
Τέλος, μπορείτε να αφαιρέσετε το αρχείο από το Google οδηγείτε.
## remove file
drive_find("table_car") %>%drive_rm()
Παραγωγή:
Η διαγραφή διεκπεραιώνεται ασύγχρονα από Google, επομένως το αρχείο μπορεί να χρειαστεί λίγο χρόνο για να εξαφανιστεί.
Εξαγωγή στο Dropbox
Το R αλληλεπιδρά με Dropbox μέσω της βιβλιοθήκης rdrop2. Η βιβλιοθήκη δεν είναι επίσης διαθέσιμη στο Anaconda. Μπορείτε να το εγκαταστήσετε μέσω της κονσόλας
install.packages('rdrop2')
library(rdrop2)
Παραχωρείτε προσωρινή πρόσβαση σε Dropbox με τα διαπιστευτήριά σας. Μόλις ολοκληρωθεί η επαλήθευση, το R μπορεί να δημιουργήσει, να καταργήσει, να ανεβάσει και να κατεβάσει αρχεία στο Dropbox.
Πρώτα απ 'όλα, πρέπει να δώσετε πρόσβαση στον λογαριασμό σας. Τα διαπιστευτήρια αποθηκεύονται προσωρινά κατά τη διάρκεια όλης της περιόδου λειτουργίας.
drop_auth()
Θα γίνει ανακατεύθυνση σε Dropbox για να επιβεβαιώσετε τον έλεγχο ταυτότητας.
Θα λάβετε μια σελίδα επιβεβαίωσης. Μπορείτε να το κλείσετε και να επιστρέψετε στο R
Μπορείτε να δημιουργήσετε έναν φάκελο με τη συνάρτηση drop_create().
- drop_create('my_first_drop'): Δημιουργήστε έναν φάκελο στον πρώτο κλάδο του Dropbox
- drop_create('First_branch/my_first_drop'): Δημιουργήστε έναν φάκελο μέσα στον υπάρχοντα φάκελο First_branch.
drop_create('my_first_drop')
Παραγωγή:
Στο DropBox
Για να ανεβάσετε το αρχείο .csv στο δικό σας Dropbox, χρησιμοποιήστε τη συνάρτηση drop_upload().
Βασική σύνταξη:
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")
Παραγωγή:
Στο DropBox
Μπορείτε να διαβάσετε το αρχείο csv από Dropbox με τη συνάρτηση drop_read_csv()
dropbox_table_car <-drop_read_csv("my_first_drop/table_car.csv")
dropbox_table_car
Παραγωγή:
## 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
Όταν ολοκληρώσετε τη χρήση του αρχείου και θέλετε να το διαγράψετε. Πρέπει να γράψετε τη διαδρομή του αρχείου στη συνάρτηση drop_delete()
drop_delete('my_first_drop/table_car.csv')
Παραγωγή:
Είναι επίσης δυνατή η διαγραφή ενός φακέλου
drop_delete('my_first_drop')
Παραγωγή:
Εξαγωγή δεδομένων από την R: Αναφορά συνάρτησης
Κάθε συνάρτηση εξαγωγής που χρησιμοποιείται σε αυτό το σεμινάριο παρατίθεται παρακάτω:
| Βιβλιοθήκη | Σκοπός | Λειτουργία |
|---|---|---|
| βάση | Εξαγωγή csv | write.csv() |
| xlsx | Εξαγωγή excel | write.xlsx() |
| επίνειο | Εξαγωγή spss | write_sav() |
| επίνειο | Εξαγωγή sas | write_sas() |
| επίνειο | Εξαγωγή στατιστικών | write_dta() |
| βάση | Εξαγωγή αντικειμένων R | αποθήκευση() / αποθήκευσηRDS() |
| googledrive | Μεταφόρτωση Google Drive | drive_upload() |
| googledrive | Ανοίξτε το Google Drive | drive_browse() |
| googledrive | Ανάκτηση αναγνωριστικού αρχείου | drive_get(as_id()) |
| googledrive | Κατεβάστε από Google Drive | drive_download() |
| googledrive | Αφαίρεση αρχείου από Google Drive | drive_rm() |
| rdrop2 | Πιστοποίηση | drop_auth() |
| rdrop2 | Δημιουργήστε ένα φάκελο | drop_create() |
| rdrop2 | Μεταφορτώστε στο Dropbox | drop_upload() |
| rdrop2 | Διαβάστε το csv από Dropbox | drop_read_csv() |
| rdrop2 | Διαγραφή αρχείου από Dropbox | drop_delete() |













