Import Dữ liệu từ Excel
Để có thể thực hiện phân tích dữ liệu, trước tiên chúng ta cần phải có dữ liệu, mà dữ liệu có thể có từ nhiều nguồn khác nhau và được lưu trữ dưới các định dạng file khác nhau như .txt, .csv, .xlsx, hay database… Trong bài viết này, Quý sẽ hướng dẫn các bạn cách import và export dữ liệu từ file Excel vào R. Excel là dạng file dữ liệu phổ biến nhất mà chúng ta hay gặp khi phân tích dữ liệu. Để import file Excel vào R, chúng ta có thể sử dụng package readxl.
library(readxl)
Giả sử chúng ta có file excel là datasets.xlsx với 4 sheets là bộ dữ liệu hoa IRIS, thông tin ô tô(mtcars), bộ dữ liệu về động đất(quakes) và bộ dữ liệu về cân nặng của gà con(chickwts). Để đọc được dữ liệu của từng sheet, chúng ta thêm tham số sheet =…
library(dplyr)
library(DT)
<- read_excel("D:/Short Course Using R/Lesson 1/datasets.xlsx", sheet = 2)
mydata %>% datatable() mydata
Như vậy, để import dữ liệu của tất cả các sheet trong file Excel vào R, chúng ta có thể import từng sheet trong file Excel đó vào R bằng việc sử dụng câu lệnh ở trên. Tuy nhiên, việc làm “thủ công” đó chỉ thích hợp với trường hợp file Excel chỉ gồm 1 vài sheet, còn đối với những trường hợp file Excel bao gồm cả hàng chục hoặc hàng trăm sheet thì chúng ta cần một giải pháp khác để xử lý. Chúng ta cần cài thêm package openxlsx
library(openxlsx) # package cần dùng
<- loadWorkbook("D:/Short Course Using R/Lesson 1/datasets.xlsx") # thống kê những sheets có trong file excel
wb_obj <- sheets(wb_obj) # tên của các sheets
sheet_names for (i in 1:length(sheet_names)) {
# Đối với lần lượt từng sheet trong file excel, câu lệnh sẽ import thành 1 data frame trong R với tên tương ứng theo từng sheet
assign(sheet_names[i], readWorkbook(wb_obj, sheet = i))
}
Export dữ liệu từ Excel
Vậy làm thế nào để export dữ liệu từ R ra file Excel?
Câu trả lời là: Dùng hàm write.xlsx() trong package xlsx.
library(xlsx) write.xlsx(iris,
- Cach 1: file = paste0(getwd(),“/”,“iris_data.xlsx”), row.names = F)
- Cach 2: file = “Link…/name_file.xlsx” ,row.names = F)
Tuy nhiên, với cách sử dụng xlsx, máy tính đòi hỏi phải cài đặt Java. Do đó, hiện này có một cách thuận tiện hơn, đó là sử dụng package writexl
library(writexl)
writexl::write_xlsx(iris, path = “./iris_data.xlsx”)
Import dữ liệu từ SPSS, STATA, SAS
Hiện nay, ngày càng nhiều các bạn dịch chuyển từ việc sử dụng STATA, SPSS hay SAS sang R. Tuy nhiên, khi chuyển sang công cụ mới, ta thường vẫn muốn tiếp tục sử dụng dữ liệu trên các phần mềm trước đây từng sử dụng. Quý sẽ hướng dẫn các bạn cách import dữ liệu từ SAS, SPSS hoặc STATA vào R.
Với ba loại định dạng dữ liệu trên, ta có thể sử dụng package haven được tích hợp sẵn trong tidyverse.
Với SAS
library(haven) read_sas(“mtcars.sas7bdat”) write_sas(mtcars, “mtcars.sas7bdat”)
Với SPSS
read_sav(“mtcars.sav”) write_sav(mtcars, “mtcars.sav”)
Với STATA
read_dta(“mtcars.dta”) write_dta(mtcars, “mtcars.dta”)
Đối với RStudio, các bạn có thể sử dụng chức năng import data set. Các bạn có thể xem hình minh họa dưới đâyImport/Export Data with R