1. Học hỏi
  2. /
  3. Khoa Học
  4. /
  5. Viết mã R hiệu quả

Connected

Bài tập

So sánh thời gian đọc tệp CSV và RDS

Một trong những việc bạn thường làm là đọc dữ liệu từ các tệp CSV. Tuy nhiên, với các tệp CSV lớn, thao tác này có thể chậm. Một mẹo hay là đọc dữ liệu rồi lưu thành tệp nhị phân của R (rds) bằng saveRDS(). Để đọc tệp rds, bạn dùng readRDS().

Lưu ý: Vì rds là định dạng gốc của R để lưu trữ một đối tượng đơn lẻ, bạn không thêm bất kỳ phụ thuộc bên thứ ba nào có thể thay đổi trong tương lai.

Để benchmark hai cách tiếp cận, bạn có thể dùng system.time(). Hàm này trả về thời gian cần để đánh giá bất kỳ biểu thức R nào. Ví dụ, để đo thời gian tính căn bậc hai của các số từ một đến mười triệu, bạn viết như sau:

system.time(sqrt(1:1e7))

Hướng dẫn

100 XP

Hai tệp "movies.csv" và "movies.rds" đều chứa cùng một data frame với thông tin về 45.000 bộ phim.

  • Dùng hàm system.time(), mất bao lâu để đọc tệp CSV bằng read.csv("movies.csv").
  • Lặp lại với tệp rds, "movies.rds" bằng cách dùng readRDS().