Cách xuất dữ liệu từ R
Trong hướng dẫn này, chúng ta sẽ học cách xuất dữ liệu từ môi trường R sang các định dạng khác nhau.
Để xuất dữ liệu vào ổ cứng, bạn cần đường dẫn tệp và một phần mở rộng. Trước hết, đường dẫn là vị trí mà dữ liệu sẽ được lưu trữ. Trong hướng dẫn này, bạn sẽ thấy cách lưu trữ dữ liệu trên:
- Ổ cứng
- Google Drive
- Dropbox
Thứ hai, R cho phép người dùng xuất dữ liệu thành các loại tệp khác nhau. Chúng tôi đề cập đến phần mở rộng của tệp cần thiết:
- csv
- xlsx
- RDS
- SAS
- SPSS
- STATA
Nhìn chung, không khó để xuất dữ liệu từ R.
Trong hướng dẫn này, bạn sẽ học-
- Xuất sang ổ cứng
- Cách xuất DataFrame sang tệp CSV trong R
- Cách xuất dữ liệu từ R sang tệp Excel
- Xuất dữ liệu từ R sang phần mềm khác nhau
- Xuất dữ liệu từ R sang Tệp SAS
- Cách xuất dữ liệu từ R sang tệp STATA
- Tương tác với các dịch vụ đám mây
- Google Drive
- Xuất sang Dropbox
Xuất sang ổ cứng
Để bắt đầu, bạn có thể lưu dữ liệu trực tiếp vào thư mục làm việc. Đoạn mã sau in ra đường dẫn của thư mục làm việc của bạn:
directory <-getwd()directory
Đầu ra:
## [1] "/Users/15_Export_to_do"
Theo mặc định, tệp sẽ được lưu trong đường dẫn bên dưới.
Đối với Mac OS:
/Users/USERNAME/Downloads/
Cho cửa sổ:
C:\Users\USERNAME\Documents\
Tất nhiên, bạn có thể đặt một con đường khác. Ví dụ: bạn có thể thay đổi đường dẫn đến thư mục tải xuống.
Tạo khung dữ liệu
Trước hết, hãy nhập tập dữ liệu mtcars và lấy giá trị trung bình của mpg và disp được nhóm theo bánh răng.
library(dplyr)df <-mtcars % > %select(mpg, disp, gear) % > %group_by(gear) % > %summarize(mean_mpg = mean(mpg), mean_disp = mean(disp))df
Đầu ra ::
## # A tibble: 3 x 3## gear mean_mpg mean_disp##lt;dbl>## 1 3 16.10667 326.3000## 2 4 24.53333 123.0167## 3 5 21.38000 202.4800
Bảng chứa ba hàng và ba cột. Bạn có thể tạo tệp CSV với hàm write.csv trong R.
Cách xuất DataFrame sang tệp CSV trong R
Cú pháp cơ bản của write.csv trong R để Xuất DataFrame sang CSV trong 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
Thí dụ:
write.csv(df, "table_car.csv")
Giải thích mã
- write.csv (df, "table_car.csv"): Tạo tệp CSV trong ổ cứng:
- df: tên của khung dữ liệu trong môi trường
- "table_car.csv": Đặt tên tệp là table_car và lưu trữ dưới dạng csv
Lưu ý : Bạn có thể sử dụng hàm write.csv trong R dưới dạng write.csv2 () để phân tách các hàng bằng dấu chấm phẩy để R xuất sang dữ liệu csv.
write.csv2(df, "table_car.csv")
Lưu ý : Chỉ cho mục đích sư phạm, chúng tôi đã tạo một hàm có tên open_folder () để mở thư mục thư mục cho bạn. Bạn chỉ cần chạy đoạn mã bên dưới và xem tệp csv được lưu trữ ở đâu. Bạn sẽ thấy tên tệp table_car.csv để xuất dữ liệu R sang csv.
# Run this code to create the functionopen_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 folderopen_folder(directory)
Cách xuất dữ liệu từ R sang tệp Excel
Bây giờ, chúng ta sẽ học cách xuất dữ liệu từ R sang Excel:
Xuất dữ liệu từ R sang Excel là việc đơn giản đối với người dùng Windows và khó hơn đối với người dùng Mac OS. Cả hai người dùng sẽ sử dụng thư viện xlsx để tạo tệp Excel. Sự khác biệt nhỏ đến từ việc cài đặt thư viện. Thật vậy, thư viện xlsx sử dụng Java để tạo tệp. Java cần được cài đặt nếu không có trong máy của bạn để xuất dữ liệu R sang Excel.
Người dùng Windows
Nếu bạn là người dùng Windows, bạn có thể cài đặt thư viện trực tiếp với conda để xuất dataframe sang excel R:
conda install -c r r-xlsx
Sau khi cài đặt thư viện, bạn có thể sử dụng hàm write.xlsx (). Một sổ làm việc Excel mới được tạo trong thư mục làm việc để xuất R sang dữ liệu Excel
library(xlsx)write.xlsx(df, "table_car.xlsx")
Nếu bạn là người dùng Mac OS, bạn cần làm theo các bước sau:
- Bước 1: Cài đặt phiên bản Java mới nhất
- Bước 2: Cài đặt thư viện rJava
- Bước 3: Cài đặt thư viện xlsx
Bước 1) Bạn có thể tải xuống Java từ trang web chính thức của Oracle và cài đặt nó.
Bạn có thể quay lại Rstudio và kiểm tra phiên bản Java nào đã được cài đặt.
system("java -version")
Tại thời điểm hướng dẫn, phiên bản mới nhất của Java là 9.0.4.
Bước 2) Bạn cần cài đặt rjava trong R. Chúng tôi khuyên bạn nên cài đặt R và Rstudio với Anaconda. Anaconda quản lý sự phụ thuộc giữa các thư viện. Theo nghĩa này, Anaconda sẽ xử lý sự phức tạp của cài đặt rJava.
Trước hết, bạn cần cập nhật conda và sau đó cài đặt thư viện. Bạn có thể sao chép và dán hai dòng mã tiếp theo vào thiết bị đầu cuối.
conda - conda updateconda install -c r r-rjava
Tiếp theo, mở rjava trong Rstudio
library(rJava)
Bước 3) Cuối cùng, đã đến lúc cài đặt xlsx. Một lần nữa, bạn có thể sử dụng conda để làm điều đó:
conda install -c r r-xlsx
Cũng giống như người dùng windows, bạn có thể lưu dữ liệu bằng hàm write.xlsx ()
library(xlsx)
Đầu ra:
## Loading required package: xlsxjars
write.xlsx(df, "table_car.xlsx")
Xuất dữ liệu từ R sang phần mềm khác nhau
Việc xuất dữ liệu sang các phần mềm khác nhau cũng đơn giản như nhập chúng. Thư viện "thiên đường" cung cấp một cách thuận tiện để xuất dữ liệu sang
- spss
- sas
- stata
Trước hết, nhập thư viện. Nếu chưa có "thiên đường", bạn có thể vào đây để cài đặt.
library(haven)
Tệp SPSS
Dưới đây là đoạn mã để xuất dữ liệu sang phần mềm SPSS:
write_sav(df, "table_car.sav")
Xuất dữ liệu từ R sang Tệp SAS
Chỉ đơn giản như spss, bạn có thể xuất sang sas
write_sas(df, "table_car.sas7bdat")
Cách xuất dữ liệu từ R sang tệp STATA
Cuối cùng, thư viện haven cho phép ghi tệp .dta.
write_dta(df, "table_car.dta")
R
Nếu bạn muốn lưu một khung dữ liệu hoặc bất kỳ đối tượng R nào khác, bạn có thể sử dụng hàm save ().
save(df, file ='table_car.RData')
Bạn có thể kiểm tra các tệp được tạo ở trên trong thư mục làm việc hiện tại
Tương tác với các dịch vụ đám mây
Cuối cùng nhưng không kém phần quan trọng, R được trang bị các thư viện tuyệt vời để tương tác với các dịch vụ điện toán đám mây. Phần cuối cùng của hướng dẫn này đề cập đến các tệp xuất / nhập từ:
- Google Drive
- Dropbox
Lưu ý : Phần này của hướng dẫn giả sử bạn có tài khoản với Google và Dropbox. Nếu không, bạn có thể nhanh chóng tạo một tài khoản cho - Google Drive: https://accounts.google.com/SignUp?hl=vi - Dropbox: https://www.dropbox.com/h
Google Drive
Bạn cần cài đặt thư viện googledrive để truy cập chức năng cho phép tương tác với Google Drive.
Thư viện chưa có tại Anaconda. Bạn có thể cài đặt nó bằng mã bên dưới trong bảng điều khiển.
install.packages("googledrive")
và bạn mở thư viện.
library(googledrive)
Đối với người dùng không phải chung cư, việc cài đặt thư viện rất dễ dàng, bạn có thể sử dụng hàm install.packages ('TÊN GÓI) với tên của gói bên trong dấu ngoặc đơn. Đừng quên ''. Lưu ý rằng, R phải tự động cài đặt gói trong `libPaths (). Nó là giá trị để xem nó trong hành động.
Tải lên Google Drive
Để tải tệp lên Google drive, bạn cần sử dụng hàm drive_upload ().
Mỗi lần khởi động lại Rstudio, bạn sẽ được nhắc cho phép truy cập vào Google Drive.
Cú pháp cơ bản của drive_upload () là
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.
Sau khi khởi chạy mã, bạn cần xác nhận một số câu hỏi
drive_upload%<("table_car.csv", name ="table_car")
Đầu ra:
## Local file:## * table_car.csv## uploaded into Drive file:## * table_car: 1hwb57eT-9qSgDHt9CrVt5Ht7RHogQaMk## with MIME type:## * text/csv
Bạn gõ phím 1 vào bảng điều khiển để xác nhận quyền truy cập
Sau đó, bạn được chuyển hướng đến API Google để cho phép truy cập. Nhấp vào Cho phép.
Sau khi xác thực hoàn tất, bạn có thể thoát khỏi trình duyệt của mình.
Trong bảng điều khiển của Rstudio, bạn có thể xem tóm tắt của bước đã thực hiện. Google đã tải lên thành công tệp nằm cục bộ trên Drive. Google đã chỉ định một ID cho mỗi tệp trong ổ đĩa.
Bạn có thể xem tệp này trong Bảng tính Google.
drive_browse("table_car")
Đầu ra:
Bạn sẽ được chuyển hướng đến Bảng tính Google
Nhập từ Google Drive
Tải lên tệp từ Google Drive với ID rất tiện lợi. Nếu bạn biết tên tệp, bạn có thể lấy ID của nó như sau:
Lưu ý : Tùy thuộc vào kết nối internet của bạn và kích thước Drive của bạn, điều này sẽ mất thời gian.
x <-drive_get("table_car")as_id(x)
Bạn đã lưu trữ ID trong biến x. Hàm drive_download () cho phép tải xuống một tệp từ Google Drive.
Cú pháp cơ bản là:
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.
Cuối cùng bạn có thể tải xuống tệp:
download_google & lt; - drive_download(as_id(x), overwrite = TRUE)
Giải thích mã
- drive_download (): Chức năng tải tệp xuống từ Google Drive
- as_id (x): Sử dụng ID để duyệt tệp trong Google Drive
- override = TRUE: Nếu tệp tồn tại, hãy ghi đè nó, nếu không thì quá trình thực thi sẽ tạm dừng Để xem tên tệp cục bộ, bạn có thể sử dụng:
Đầu ra:
Tệp được lưu trữ trong thư mục làm việc của bạn. Hãy nhớ rằng, bạn cần thêm phần mở rộng của tệp để mở nó bằng R. Bạn có thể tạo tên đầy đủ bằng hàm paste () (tức là table_car.csv)
google_file <-download_google$local_pathgoogle_filepath <-paste(google_file, ".csv", sep = "")google_table_car <-read.csv(path)google_table_car
Đầu ra:
## 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
Cuối cùng, bạn có thể xóa tệp khỏi ổ đĩa Google của mình.
## remove filedrive_find("table_car") %>%drive_rm()
Đầu ra:
Đó là một quá trình chậm. Mất thời gian để xóa
Xuất sang Dropbox
R tương tác với Dropbox thông qua thư viện rdrop2. Thư viện cũng không có sẵn tại Anaconda. Bạn có thể cài đặt nó thông qua bảng điều khiển
install.packages('rdrop2')
library(rdrop2)
Bạn cần cung cấp quyền truy cập tạm thời vào Dropbox bằng thông tin đăng nhập của mình. Sau khi xác định xong, R có thể tạo, xóa tải lên và tải xuống Dropbox của bạn.
Trước hết, bạn cần cấp quyền truy cập vào tài khoản của mình. Thông tin đăng nhập được lưu trong bộ nhớ cache trong tất cả các phiên.
drop_auth()
Bạn sẽ được chuyển hướng đến Dropbox để xác nhận việc xác thực.
Bạn sẽ nhận được một trang xác nhận. Bạn có thể đóng nó và quay lại R
Bạn có thể tạo một thư mục bằng hàm drop_create ().
- drop_create ('my_first_drop'): Tạo một thư mục trong nhánh đầu tiên của Dropbox
- drop_create ('First_branch / my_first_drop'): Tạo một thư mục bên trong thư mục First_branch hiện có.
drop_create('my_first_drop')
Đầu ra:
Trong DropBox
Để tải tệp .csv lên Dropbox của bạn, hãy sử dụng hàm drop_upload ().
Cú pháp cơ bản:
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")
Đầu ra:
Tại DropBox
Bạn có thể đọc tệp csv từ Dropbox bằng hàm drop_read_csv ()
dropbox_table_car <-drop_read_csv("my_first_drop/table_car.csv")dropbox_table_car
Đầu ra:
## 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
Khi bạn sử dụng xong tập tin và muốn xóa nó. Bạn cần viết đường dẫn của tệp trong hàm drop_delete ()
drop_delete('my_first_drop/table_car.csv')
Đầu ra:
Cũng có thể xóa một thư mục
drop_delete('my_first_drop')
Đầu ra:
Tóm lược
Chúng tôi có thể tóm tắt tất cả các chức năng trong bảng dưới đây
Thư viện |
Mục tiêu |
Chức năng |
---|---|---|
căn cứ |
Xuất csv |
write.csv () |
xlsx |
Xuất Excel |
write.xlsx () |
trú ẩn |
Xuất spss |
write_sav () |
trú ẩn |
Xuất sas |
write_sas () |
trú ẩn |
Xuất dữ liệu |
write_dta () |
căn cứ |
Xuất R |
tiết kiệm() |
googledrive |
Tải lên Google Drive |
drive_upload () |
googledrive |
Mở trong Google Drive |
drive_browse () |
googledrive |
Truy xuất ID tệp |
drive_get (as_id ()) |
googledrive |
Tải xuống từ Google Drive |
download_google () |
googledrive |
Xóa tệp khỏi Google Drive |
drive_rm () |
rdrop2 |
Xác thực |
drop_auth () |
rdrop2 |
Tạo một thư mục |
drop_create () |
rdrop2 |
Tải lên Dropbox |
drop_upload () |
rdrop2 |
Đọc csv từ Dropbox |
drop_read_csv |
rdrop2 |
Xóa tệp khỏi Dropbox |
drop_delete () |